【転職に役立つ】プログラマー・エンジニアのポートフォリオの作り方と考え方

本記事ではプログラマー・エンジニアの転職には必須であるポートフォリオ

・概要
・ポートフォリオを作成する目的、必要性

・企業に採用さやすいポートフォリオの作成方法

について解説していきます。

ポートフォリオというとどちらかというと「グラフィック」であったり、「楽曲」などを手掛ける人が転職やフリーランス活動をするときに利用するイメージが強いです。

しかし、最近では「エンジニアがポートフォリオを利用すること」が増えています。

エンジニアを求める企業が「選考課題」の提出や「細かい経歴」などを求めることが増えているからです。

ポートフォリオとは

ポートフォリオは直訳すると「携帯する書類入れ」という意味です。

冒頭で記載したように「自分の作品や書類」のことを指します。

エンジニアの世界では

・経歴書・スキルシート

・選考課題

などがこれに該当します。

ただ、選考課題を求める企業はさほど多くないため、「経歴書」および「スキルシート」に絞って説明をします。

ポートフォリオの作成の目的

ポートフォリオの作成の目的は大きく分けて

・自分をアピールするための商材
・採用側がスキル的にマッチするプロジェクトの確認

の二つに分けることができます。

共通で言えることはスキルを言葉ではなく、書面で確認ができるという点です。

これはプログラマーとして仕事を得るうえで大事なことです。

採用側がポートフォリオを参考することによって、「自分に適したプロジェクトに配属されること」が可能になります。

求職者はより確実に自分のためになるプロジェクトに配属されます。

採用者としても長期雇用であったり、プロジェクトコスト工数の見積(業界では原価管理と呼びます)が容易になります。

ポートフォリオは転職に役に立つ

昨今ではポートフォリオが「転職」に役立ちます。

ポートフォリオ=転職に必須

なぜなら書類選考でポートフォリオを必須提出にしている企業が過半数を占めているためです。

最近のIT業界の課題として、「エンジニアの不足」が挙げられています。

それにともない、会社としては多面性に優れたエンジニアを求めていることが多いです。

例えばjavaエンジニアだけを募集していたとしても、その他のエンジニアも不足している可能性が極めて高いのです。

したがって仮にjavaのスキルが無かったとしても、「C#」や「VB」「PHP」など他言語の秀でたスキルがポートフォリオで確認できたら採用される可能性が高いです。

また、仮に開発スキルがなくても

・ネットワークやOSの知識
・セキュリティの知識

などがあれば開発プロジェクトではない分野でも会社に採用される可能性が高いです。

ポートフォリオはフリーランスの仕事の受注に不可欠

フリーランスの場合は転職者よりもより条件は厳しくなり、「ポートフォリオがないとほぼ確実に仕事の受注は不可能」と言われるほど必要不可欠です。

フリーランスの転職にもポートフォリオは必須

少し生々しい話になりますが、フリーランスの場合は仕事の単価がかなり高いものが多数あります。

例えば正社員であれば「1カ月の見積額が70万」のところ、フリーランスの場合は「1ヶ月の見積額が100万」になるケースもあるのです。

フリーランスの単価は「社員の1.5倍前後」かかります。

そうなると、転職者のように可能性のあるプロジェクトを探すのではなく、そのプロジェクトの要件に特化したスキルを持つエンジニアである必要があります。

単価が高く、専門性の高いスキルを要求されるわけですから、「私はjavaを10年間javaをやってきました」といってもほぼ確実に受注は出来ません。

かといって「javaでこれを開発しました、あれを開発しました」と口で言っても受注できません。

その時にポートフォリオを提出し、スキルマッチする過去のプロジェクトに対して話を行う必要があります。

すると選考側もどのようなスキルを有しているのかが明確になるので

・プロジェクトにスキルマッチするか
・募集単価に対して見合うか

などが分かります。

自分の能力を客観的に証明できる作品集

ポートフォリオは冒頭でも述べたように「自分の能力を証明するための作品集」です。

そのポートフォリオを見た上で判断するのは基本、採用する側です。

しかし

・自分が携わってきたプロジェクト
・プロジェクトでの職位
・担当フェーズ

などを列挙するだけで「自分の立ち位置」が分かりやすくなります。

特にフリーランスにとっては死活問題にもなりますが「自分の有するスキルに対する報酬」が見積もりやすくなります。

スキルに対する見積もりの見方を理解していないと

・安いプロジェクトを掴まされる
・自分のスキルと見合わないレベルのプロジェクトに入れられる

という事態に陥り、「早期契約打切り」ということにもなりかねません。

そういったことを防ぐためにポートフォリオを作成する癖をつけておき、自分のスキルレベルも把握しておく必要があります。

ポートフォリオの作り方や作成のコツ

ここからは

・採用されやすい
・企業側に印象を残しやすい

といったポートフォリオ の作成のコツを解説していきます。

具体的なポートフォリオの作り方

具体的なポートフォリオの作り方を3点挙げます。

1・自分が携わったプロジェクトを全て明記する
2・担当フェーズを全て明記する
3・リーダーやマネージメント経験がある場合はチームの「全体」人数を明記する

このポートフォリオは「実際に作品が存在しないエンジニア向け」のものです。

「手掛けた作品」があったり「wikiに載るようなシステム」などを手掛けたのであればその作品を発表するほうが効果があります。

ここからは上記の項目について説明します。

自分が携わったプロジェクトを全て明記する

一つ目として自分が携わったプロジェクトを全て明記することが重要です。

ポートフォリオには関わった全てのプロジェクトを記す

これに対しては古いプロジェクトは挙げる必要がないと否定的な意見もあります。

けれど筆者はむしろその反対で

・古いプロジェクトに実はかなりのスキルを有するものがある
・マニアックではあるけどどの現場でも必ず通る道のようなプロジェクトに携わっている

といった点も強みになります。

開発スキルが採用側の求める基準に達していなくても「幅広い知識を有している」と判断されれば良いです。

それで仕事を取ってきたり、自分で取引先に常駐するときの面談はほとんど通ります。

担当フェーズを全て明記する

担当フェーズを明記することはその人がプロジェクトのどのパートで活躍できるかの指標になります。

担当フェーズを記すことでどの部分で活躍しやすいか伝わりやすい

フェーズは大きく分けると

・システム全体像の要件を作成する「要件定義」
・要件をプログラミングするためにかみ砕いた「設計書作成」
・実際のプログラミングを行う「開発」
・プログラムのテストを行う「単体テスト」
・システムとしてのテストを行う「結合試験」「総合試験」
・システムリリース後の不具合や機能改善を行う「保守」「保全」

の6個に分類されます。

もちろん会社によって基準は違いますが、どこの会社に行くにしてもほぼ確実にこれらの単語を耳にします。

冒頭で「エンジニアのポートフォリオはスキルシートと経歴書である」と記載しました。

担当フェーズについては「スキルシート」や「経歴書」の提出を求める会社であれば100%記載する箇所が存在します。

大体のケースでは経歴書で担当したプロジェクトとセットで担当フェーズを記載します。

担当したフェーズを記載欄がこの中にない場合もあります。

その場合は「欄外」や「経歴書の欄」に担当したフェーズについて一文添えておきましょう。

すると採用する側としても非常に助かりますし、好印象になります。

リーダーやマネジメント経験がある場合はチームの「全体」人数を明記する

リーダーマネージャー経験がある人はわったプロジェクト全体人数を明記することが重要です。

リーダーやマネジメント経験がある人はプロジェクトに関わった全体の人数を記入する

なぜ「全体」かというと、面接を行っている中で「実際の開発作業を行ったメンバーだけ計上している」ことが多々あるからです。(特にリーダーにはその傾向があります)

プロジェクトには

・設計を行う人
・環境整備をする人
・テストをする人

などがいます。

担当が「自分のチームのみ」であれば開発の作業を行うメンバーのみ計上すればよいのです。

しかし、それぞれの担当がいる場合は「全体の人数」も計上するべきです。

この時、面接官が何を意識して見るかというと

・その人はどれくらいの人数を纏めることができるか
・リーダーが複数人いた場合にその人たちとちゃんと連携を取れるか

といった点を見ます。

したがって口頭で全く問題ないですが

・チームには何人のリーダーがいたか
・どのようにプロジェクトを運用していたか

などを話すと好印象を与えることができます。

ポートフォリオの作成のコツは誇大性

ポートフォリオでは自分をなるべく大きく見せるようにしなくてはなりません。

上記3点でも共通していえるのは「自分を本来の職位より大きく見せている」といった点です。

以下の2例を比較してみましょう

エンジニアエンジニア

・私は開発経験5年で、リーダー経験があります
・開発メンバーは5名でした

ということしか書いていないようなスキルシートと

エンジニアエンジニア

・私は開発経験は3年です
・業界経験は5年です
・プロジェクト全体としては10名いて、リーダーが3名いました
・私のリーダーをやっていたチーム5名です
・それぞれのリーダーと課題の共有をすることで人員の異動や工程の調整を行ってきました。

と記載されているスキルシートであればどちらを採用しますか?

迷う余地がなく後者でしょう。

なぜなら、後者は事実を述べているだけですが、「自分を大きく見せているポイント」があるからです。

「プロジェクト全体として」と伝えることで「その中でも重要なポジションにいた」ということを相手に認識させられます。

次に「課題の共有」の部分で

・コミュニケーション能力の高さ
・管理能力の高さ

といった点をアピールすることが出来ます。

ただ、全てのプロジェクトに対してその書き方ではかなりくどくなってしまいます。

ですのでアピールしたいプロジェクトやスキルを2、3個ピックアップしたらよいでしょう。

ポートフォリオの考え方

ポートフォリオの1つの捉え方として「エンジニアの履歴書」ということがあげられます。

多少スキルが低くても、「ポートフォリオがきちんと書けたり、管理できる人」は面談を行うときに相手に好印象を与えることができます。

最後に実際にスキルシートや面談にあった内容で「若手~中堅エンジニアがやってしまいがちなミス」と「その対策」を記載します。

稀ではありますが、反省点の記載を求めてくるケースがあります。

その時に経験の浅い人であれば「テストに割ける時間が少なく、不具合が発生しました」と書いてしまう人がいます。

この答えは正直ではあるのですが、絶対「ポジティブ」で終わらせてください。

例の場合は

エンジニアエンジニア

テストに割ける時間が少なく、不具合が発生しました。
プロジェクト管理の難しさを把握したうえでどこに問題があったか分析することで再発防止に務めました。
また発生した不具合については自分のナレッジ(知識)にすることで事前摘出や発生時の早期対応に役立てています

というようなポジティブで終わる書き方をすると相手に好印象を与えることができます。

プログラミングジャパンのLine公式アカウントにご招待

プログラミングジャパンのLine公式アカウント