「未経験からエンジニア転職を目指しているけれど、ポートフォリオに何を作ればいいのか分からない」「どこまで作り込めば評価されるのか」「GitHubはどう見せればいいのか」——そう思って検索してきた方に向けた、ポートフォリオ作りの完全ガイドです。
未経験者の転職では、職務経歴で実力を示せない分、ポートフォリオ(自分で作った成果物)が技術力の代わりになる重要な材料です。一方で、何を・どこまで・どう見せるかの基準が分かりにくく、ここで手が止まる人がとても多いのも事実です。
この記事は、バックエンドエンジニア歴8年・ORACLE MASTER Gold・Java Gold を保有し、個人開発でWebアプリ・モバイルアプリを実際に作って運用している筆者が、ポートフォリオの「最低ライン」と「評価されるポイント」を具体的に整理したものです。なぜ必要かという前提から、最低限満たすべき機能、技術選定の考え方、GitHubの見せ方、避けたい失敗、デプロイ先の選択肢まで、未経験者がつまずきやすい部分を一通り押さえます。
この記事で分かることは次のとおりです。
- なぜ未経験者にポートフォリオが必要なのか
- 最低ライン(CRUD+ログイン認証+本番デプロイ)と、その理由
- 技術選定の考え方(流行より「説明できるか」)
- GitHubの見せ方(README・コミット履歴・公開設定)
- 避けたい失敗(チュートリアルそのまま・盛りすぎ)
- 採用担当に実際に評価されるポイント
- デプロイ先の選択肢
この記事の目次
- なぜ未経験者にポートフォリオが必要なのか
- ポートフォリオの最低ライン:CRUD+認証+本番デプロイ
- 何を作るか:題材の決め方
- 技術選定の考え方
- GitHubの見せ方(README・コミット履歴・公開設定)
- 避けたい3つの失敗
- 採用担当に評価されるポイント
- デプロイ先(本番公開)の選択肢
- よくある質問(FAQ)
- まとめ
なぜ未経験者にポートフォリオが必要なのか
未経験からの転職では、「コードが書ける」ことを証明する手段が職務経歴の中にありません。実務経験者なら「前職で何を担当したか」で実力を推測できますが、未経験者にはそれがない。その空白を埋めるのがポートフォリオです。
採用側の立場で考えると分かりやすくなります。書類に「プログラミングを勉強しました」と書いてあっても、それだけでは「どの程度書けるのか」がまったく分かりません。一方、実際に動くアプリのURLとソースコードがあれば、採用担当はそれを開いて中身を確認できます。ポートフォリオは「言葉で主張する代わりに、現物で示す」ための材料です。
ポートフォリオが果たす役割は、主に次の3つです。
- 技術力の証明:実際に動くものを作れる、という事実そのもの
- 学習姿勢の証明:自分で調べ、手を動かし、完成まで持っていける(自走できる)
- コミュニケーションの材料:面接で「なぜこの設計にしたか」を語る具体的な題材になる
特に3つ目は見落とされがちですが重要です。ポートフォリオは作って終わりではなく、面接で深掘りされる前提で作るものです。「なぜこの機能を入れたか」「どこで詰まり、どう解決したか」を自分の言葉で説明できると、技術力以上に評価が上がることがあります。逆に、自分で説明できない成果物は、むしろマイナスに働く場合もあります。
なお、ポートフォリオを作るには前提となるプログラミング学習が必要です。何から学ぶか・独学の進め方はプログラミング勉強法 完全ガイドに体系的にまとめているので、まだ学習の途中という方はそちらから読むと流れがつかめます。
ポートフォリオの最低ライン:CRUD+認証+本番デプロイ
「どこまで作ればいいのか」に対する筆者の答えは明確です。最低ラインは「CRUD」「ログイン認証」「本番デプロイ」の3点がそろい、URLを開けば実際に動くこと。この3つを満たすかどうかで、ポートフォリオの説得力は大きく変わります。
| 最低ライン要素 | 内容 | これがあると示せること |
|---|---|---|
| CRUD | 作成・閲覧・更新・削除の一通りの操作 | データを扱う基本的なアプリを組み立てられる |
| ログイン認証 | ユーザー登録・ログイン・ログアウト | ユーザーごとのデータ管理・状態の扱いができる |
| 本番デプロイ | 誰でもURLでアクセスできる状態に公開 | 作って終わりでなく「動く形」まで持っていける |
CRUD(作成・閲覧・更新・削除)
CRUDとは、データを 作成(Create)・閲覧(Read)・更新(Update)・削除(Delete) する一連の操作のことです。多くのWebアプリはこのCRUDが土台になっています。たとえばToDoアプリなら「タスクを追加・一覧表示・編集・削除する」が、メモアプリなら「メモを書く・読む・直す・消す」がCRUDにあたります。
なぜCRUDが最低ラインかというと、データベースとアプリのやり取りを一通り実装できることの証明になるからです。表示するだけの静的なページとは違い、CRUDがあると「入力を受け取り、保存し、取り出して見せる」という、実務でも頻出する基本動作を理解していることが伝わります。
ログイン認証
次に、ユーザー登録・ログイン・ログアウトができる認証機能です。認証が入ると「ログインしたユーザーごとに、自分のデータだけが見える」という、現実のサービスに近い構造になります。
認証は、未経験者がつまずきやすい一方で、実装できると一段階上の評価につながりやすい部分です。パスワードを安全に扱う・ログイン状態を保持する(セッションやトークン)・ログインしていない人のアクセスを弾く、といった処理は、表示中心のアプリには出てこない要素だからです。自前で1から作るのが難しければ、認証を提供するサービス(後述の技術選定で触れます)を使う形でも構いません。大事なのは「ユーザーごとにデータが分かれる仕組みを動かせている」ことです。
本番デプロイ(誰でもURLで開ける状態)
最後が本番デプロイ、つまり自分のパソコンの中だけでなく、誰でもURLでアクセスできる状態に公開することです。これが意外と差がつきます。
採用担当は、忙しい中でわざわざソースコードをダウンロードして手元で動かす、ということを毎回はしてくれません。URLを開けば即動く状態になっていれば、その場で触ってもらえます。また、デプロイまでやり切っていること自体が「作るだけで終わらせず、世に出すところまでできる」という証明になります。デプロイ先の具体的な選択肢は後述します。
この3点はあくまで「最低ライン」です。満たしていないと評価の土俵に乗りにくい、という基準であって、満たせば十分という意味ではありません。ただし、未経験者がまず目指す目標としては、この3点を1つの動くアプリに統合することが、最も費用対効果の高いゴール設定だと考えています。
何を作るか:題材の決め方
最低ラインが分かったら、次は「何を作るか」です。ここで凝りすぎて手が止まる人が多いので、題材は身近で小さいものから選ぶのが鉄則です。
自分が使う・使った経験のあるものを選ぶ
おすすめは、自分が実際に使う、または使った経験のある題材です。読書記録、家計簿、勉強の進捗管理、レシピのメモ、筋トレの記録——こうした身近なテーマは、機能の必要・不要を自分で判断でき、面接でも「なぜこの機能を入れたか」を実感を持って語れます。
逆に、自分がまったく使わないジャンル(たとえば縁のない業界向けの管理システムなど)を題材にすると、機能の取捨選択に説得力が出にくく、面接での深掘りにも答えづらくなります。
「ありきたりな題材」を恐れすぎない
「ToDoアプリやブログは定番すぎて評価されないのでは」と心配する人がいますが、題材の珍しさより、作り込みと説明力のほうが見られます。定番の題材でも、CRUD+認証+デプロイをきちんと満たし、自分なりの工夫を1つ加えてあれば十分に評価対象になります。奇抜なアイデアで未完成になるより、手堅い題材を最後まで動く状態に仕上げるほうがずっと有利です。
「1題材を完成させる」を優先する
複数の小さなアプリを並べるより、1つの題材をしっかり完成させるほうが評価されやすい傾向があります。CRUD・認証・デプロイを1つのアプリに統合する過程そのものが実力の証明になるからです。題材選びに時間をかけすぎず、「身近・小さい・自分が説明できる」の3条件で早めに決めてしまいましょう。
技術選定の考え方
「どの言語・フレームワークで作るべきか」も悩みどころです。結論から言うと、未経験者の技術選定で最も大事なのは「流行」ではなく「自分が説明できること」と「情報量が多いこと」です。
「説明できる技術」を選ぶ
ポートフォリオは面接で深掘りされます。「なぜこの言語を選んだのか」「このライブラリは何をしているのか」と聞かれたとき、自分の言葉で答えられる技術構成にしておくことが何より重要です。流行っているからという理由だけで、中身を理解しないまま高度な技術を詰め込むと、面接でかえって苦しくなります。
情報量が多い技術は独学と相性がいい
未経験での開発は、エラーとの戦いです。学習情報・解説記事・公式ドキュメントが充実した技術を選ぶと、詰まったときに検索で解決策を見つけやすく、独学でも完走しやすくなります。マイナーな技術はトラブル時に情報が乏しく、未経験者には負担が大きくなりがちです。
よくある構成の方向性
参考までに、未経験者のポートフォリオでよく使われる構成の方向性を挙げます(特定の製品を推奨するものではなく、あくまで考え方の整理です)。
| 領域 | よくある選択肢の方向性 | 補足 |
|---|---|---|
| 言語 | JavaScript/TypeScript、Ruby、PHP、Python、Java など | 学習中の言語をそのまま使うのが自然 |
| フレームワーク | Web系のフルスタックフレームワークなど | CRUDが作りやすく、情報が多いものが無難 |
| データベース | リレーショナルDB(PostgreSQL・MySQL等)が基本 | CRUDの土台。SQLの基礎も学べる |
| 認証 | 自前実装、または認証を提供するサービスの利用 | 難しければサービス利用でも可。仕組みは理解しておく |
ポイントは、応募先で使われている技術に寄せられるならなお良いことです。志望企業の求人に書かれた言語・フレームワークでポートフォリオを作っておくと、「すぐに馴染めそう」という印象につながります。ただし無理に背伸びはせず、自分が説明できる範囲を守るのが前提です。
「最新の技術スタックでないと評価されない」と思い込む必要はありません。未経験者に求められているのは、最先端の知識より、選んだ技術でちゃんと動くものを作り、その選択を説明できることです。
GitHubの見せ方(README・コミット履歴・公開設定)
ポートフォリオは「動くアプリ」だけでなく、ソースコードをGitHubで公開するところまでがセットです。採用担当はコードそのものに加えて、リポジトリの整理状況まで見ています。ここで差がつくポイントを整理します。
公開設定:リポジトリはPublicにする
まず、リポジトリをPublic(公開)に設定することが前提です。Privateのままだと採用担当が中を見られません。応募書類やREADMEからリポジトリのURLにアクセスできるようにしておきましょう。なお、後述するとおり鍵・パスワード・APIキーなどの秘密情報は絶対にコミットしないよう注意が必要です(公開する=世界中から見える、ということを忘れない)。
README:最初に読まれる「顔」
READMEは、リポジトリを開いたとき最初に表示される説明ファイルで、ポートフォリオの第一印象を決める「顔」です。コードを読む前に、まずここが見られます。最低限、次の要素を入れておくと親切です。
- アプリの概要:何ができるアプリか、1〜2行で
- 本番URL:実際に動いているデモのリンク
- 使用技術:言語・フレームワーク・DB・主要ライブラリなど
- 主な機能:CRUD・認証など、できることの一覧
- 工夫した点・苦労した点:自分の判断や試行錯誤が伝わる部分
- (あれば)画面イメージ:スクリーンショットやGIF
特に「工夫した点・苦労した点」は、自走力をアピールできる差別化要素です。「ここで詰まり、こう調べて解決した」という記述があると、未経験でも前に進める人だと伝わります。
コミット履歴:作り方の過程が見える
GitHubでは、コミット履歴(変更の記録)も見られます。コミットの粒度やメッセージから、開発の進め方がある程度伝わります。
- 意味のある単位でこまめにコミットする:巨大な1コミットより、機能ごとに分かれているほうが過程が見える
- コミットメッセージは内容が分かる言葉にする:「修正」「update」だけの連続より、何をしたか分かる短文が望ましい
- 継続的に作業した形跡があると好印象:一気に作ったより、少しずつ積み上げた履歴のほうが学習姿勢が伝わる
完璧な履歴を目指す必要はありませんが、「適当に1回だけ全部push」は避けたほうが無難です。コミット履歴は、書類には書けない「開発の進め方」を語ってくれます。
避けたい3つの失敗
ポートフォリオでよく見られる、評価を下げる失敗パターンを3つ挙げます。これらを避けるだけでも、相対的な評価は上がります。
失敗1:チュートリアルをそのまま提出する
最も多く、最も評価につながりにくいのが、教材・チュートリアルどおりに作っただけのものです。採用側は多くのポートフォリオを見ているため、「これは○○の写経だな」と見抜かれやすく、自分の判断が入っていない成果物は技術力の証明になりにくいのが実情です。
チュートリアルで土台を作ること自体は有効です。問題は「そこで止めること」。題材を自分の関心に変える・機能を1つ足す・デザインを調整するなど、自分の判断が入った差分を必ず加えましょう。少しの改変でも「自走できる」という印象は大きく変わります。
失敗2:機能を盛りすぎて未完成になる
逆に、機能を盛り込みすぎて完成しないのもよくある失敗です。「あれもこれも」と詰め込んだ結果、どれも中途半端でデプロイまで到達しない——これでは評価以前の問題になります。
未経験者のポートフォリオは、機能の多さより「最低ラインを満たして完成している」ことが優先です。前述のとおり、CRUD+認証+デプロイを1つのアプリで動く状態にするのが第一目標。機能の追加は、それが完成してからで十分です。
失敗3:秘密情報をコミットしてしまう
技術的に致命的なのが、APIキー・パスワード・接続情報などの秘密情報をGitHubに公開してしまうことです。Publicリポジトリは世界中から見えるため、鍵を直書きしてコミットすると、それ自体がセキュリティ意識の低さの証明になってしまいます。
対策として、秘密情報は環境変数(.envファイルなど)で管理し、それをコミット対象から除外する(.gitignoreに追加する)のが基本です。一度コミットしてしまった秘密情報は履歴にも残るため、扱いには十分注意してください。こうした基本を押さえていること自体も、地味ながら評価につながるポイントです。
採用担当に評価されるポイント
ここまでを踏まえ、採用担当が実際にどこを見ているかという観点で、評価につながるポイントを整理します。豪華さや珍しさより、地に足のついた要素が見られています。
ポイント1:実際に動くか(再現性)
最優先は、URLを開いて実際に動くことです。当たり前に思えますが、デプロイが切れていたり、エラーで動かなかったりするケースは少なくありません。動かないポートフォリオは、技術力以前に「最後まで仕上げきれない人」という印象を与えてしまいます。提出前に、別の環境(スマホやシークレットウィンドウなど)でも動作するか確認しておきましょう。
ポイント2:自分で説明できるか
前述のとおり、ポートフォリオは面接で深掘りされます。「なぜこの設計か」「どこで詰まり、どう解決したか」を自分の言葉で語れるかは、技術力と同じくらい見られます。コピーした部分が多いと、ここで答えに詰まり、かえって評価を下げます。
ポイント3:基本がきちんとしているか
派手な機能よりも、基本の堅実さが評価されます。具体的には次のような点です。
- ログイン認証で、他人のデータが見えてしまわないか(権限の基本)
- 秘密情報をコミットしていないか(セキュリティの基本)
- READMEやコミットが整理されているか(伝える姿勢)
- エラー時に画面が壊れず、最低限のハンドリングがあるか
これらは「できて当たり前」に見えて、未経験者のポートフォリオでは抜けがちな部分です。だからこそ、押さえてあると相対的に好印象になります。
ポイント4:自走力・学習姿勢が伝わるか
未経験採用で最も重視されることが多いのが、入社後に自分で学んで伸びていけるか(自走力)です。チュートリアルからの差分、苦労した点の記述、継続的なコミット履歴——これらはすべて「自分で調べて手を動かし、完成まで持っていける人」という証拠になります。技術力がまだ未熟でも、自走力が伝われば評価される場面は多くあります。
ここで挙げた評価ポイントは、業界全般で語られる一般的な傾向であり、企業・職種・面接官によって重視点は変わります。志望先が公開している求人要件や採用ページがあれば、そちらも必ず確認してください。
デプロイ先(本番公開)の選択肢
最低ラインの1つ「本番デプロイ」を実現するための、デプロイ先(ホスティング)の選択肢を整理します。製品の優劣ではなく、タイプ別の特徴と選び方としてお読みください(各サービスの仕様・料金は変わることがあるため、最新情報は各公式でご確認ください)。
| タイプ | 特徴 | 向いている使い方 |
|---|---|---|
| フロント/フルスタック向けPaaS | Gitと連携し、pushで自動デプロイできるものが多い | 個人ポートフォリオの定番。手軽に公開したい |
| サーバー込みのアプリ向けPaaS | バックエンドやDBもまとめてデプロイしやすい | サーバーサイドを含むアプリを動かしたいとき |
| クラウド(IaaS) | 自由度が高いがインフラ知識が必要 | インフラ自体を学びたい・アピールしたいとき |
| コンテナ/その他ホスティング | Dockerなどで構成を固めてデプロイ | 環境を再現性高く管理したいとき |
未経験者は「手軽に公開できる」ものから
未経験者がまず目指すべきは、「とにかく本番URLで動く状態にする」ことです。そのため、最初はGitと連携して自動でデプロイできる手軽なサービスを選ぶのが現実的です。インフラの細かい設定に時間を取られず、アプリ本体の完成に集中できます。
一方で、インフラ寄りの職種(インフラエンジニア・SREなど)を志望する場合は、あえてクラウド(IaaS)で構築し、その過程をアピール材料にする手もあります。志望する方向性に合わせてデプロイ先を選ぶと、それ自体が技術選定の説明材料になります。
デプロイで気をつけること
- 無料枠の範囲・スリープ仕様を確認する:無料プランはアクセスがないと停止するものもあり、面接時に「開いたら動かない」を避けるため挙動を把握しておく
- 本番でも秘密情報は環境変数で管理する:デプロイ先の環境変数機能を使い、鍵をコードに直書きしない
- 公開後も動作確認を続ける:応募のたびにURLが生きているか確認する
なお、ポートフォリオ作りで身につけた「企画→実装→デプロイ→運用」の一連の流れは、そのまま副業の個人開発にもつながります。学んだスキルを収入に発展させる道筋は個人開発の副業は稼げる?(収益化の現実と始め方)で詳しく解説しているので、転職後の選択肢として知っておくと視野が広がります。
ポートフォリオ作りのよくある質問(FAQ)
Q. 未経験エンジニアのポートフォリオはどこまで作れば評価されますか?
A. 最低ラインは「CRUD(作成・閲覧・更新・削除)+ログイン認証+本番デプロイ」の3点がそろい、URLを開けば実際に動くことです。この水準を満たすと、チュートリアル写経との差が明確になり、採用側が技術力を判断しやすくなります。機能を盛るより、1つの題材を最後まで動く状態に仕上げるほうが評価されやすい傾向があります。詳しくは最低ラインのパートを参照してください。
Q. ポートフォリオはGitHubで公開すべきですか?
A. 公開を強くおすすめします。採用担当はコードそのものに加え、README・コミット履歴・リポジトリの整理状況まで見ます。リポジトリをPublicにし、READMEに概要・使った技術・本番URL・工夫した点を書いておくと、書類だけでは伝わらない実装力や進め方が伝わります。鍵やパスワードはコミットしないよう注意が必要です。見せ方はGitHubの見せ方にまとめています。
Q. ポートフォリオはチュートリアルそのままでも大丈夫ですか?
A. おすすめしません。教材どおりに作っただけの成果物は採用側に見抜かれやすく、評価につながりにくいのが実情です。チュートリアルで土台を作ること自体は有効ですが、題材を自分の関心に変える・機能を1つ足す・デザインを調整するなど、自分の判断が入った差分を加えることで「自走できる」印象が大きく変わります。
Q. ポートフォリオは何を作ればいいですか?例を教えてください。
A. 読書記録、家計簿、勉強の進捗管理、メモアプリなど、自分が実際に使う身近な題材から選ぶのがおすすめです。定番の題材でも、CRUD+認証+デプロイを満たし、自分なりの工夫を加えてあれば十分評価対象になります。珍しさより「最後まで動く状態に仕上げ、説明できること」が大切です。題材の決め方はこちらのパートを参照してください。
Q. ポートフォリオの技術選定は流行を追うべきですか?
A. 流行より、自分が説明できる技術と情報量が多い技術を優先してください。面接では「なぜこの技術か」を深掘りされるため、中身を理解しないまま流行りの技術を詰め込むと苦しくなります。可能なら志望先で使われている技術に寄せると、馴染みやすさのアピールにもなります。
Q. 1つの大きなアプリと、複数の小さなアプリ、どちらがいいですか?
A. 未経験者の場合、まずは1つの題材をしっかり完成させるほうが評価されやすい傾向があります。CRUD・認証・デプロイを1つのアプリに統合する過程そのものが実力の証明になるためです。完成度の低いアプリを複数並べるより、動く1本を仕上げることを優先しましょう。
Q. ポートフォリオを作ったら、それだけで転職できますか?
A. ポートフォリオは未経験転職の重要な材料ですが、それだけで内定が確約されるものではありません。職務経歴書の書き方、面接対策、企業選びなど、ほかの要素も合わせて整える必要があります。あわせて、学習の全体像はプログラミング勉強法 完全ガイド、学んだスキルの活かし方は個人開発の副業は稼げる?も参考にしてください。なお採用基準は企業によって異なるため、本記事の内容は一般的な傾向としてお読みください。
まとめ
未経験エンジニアのポートフォリオ作りの要点を整理します。
- 未経験転職では、ポートフォリオが職務経歴の代わりに技術力・自走力・面接の材料を示す
- 最低ラインは 「CRUD+ログイン認証+本番デプロイ」がそろい、URLを開けば動くこと。機能の多さより完成度を優先する
- 題材は身近で小さく、自分が説明できるものを1つ選び、最後まで仕上げる。定番でも作り込みと説明力があれば評価される
- 技術選定は流行より「自分が説明できる」「情報量が多い」を基準に。可能なら志望先の技術に寄せる
- GitHubで公開(Public)し、README・コミット履歴を整える。鍵・パスワードは絶対にコミットしない
- 避けたい失敗は ①チュートリアルそのまま ②機能の盛りすぎで未完成 ③秘密情報のコミット
- 採用担当が見るのは 動くか・説明できるか・基本が堅いか・自走力が伝わるか。派手さより堅実さ
- デプロイ先は、未経験者はまず手軽に公開できるサービスから。志望方向に合わせて選ぶと説明材料になる
ポートフォリオは、豪華さを競うものではありません。「最低ラインを満たした、動く成果物を1つ、自分の言葉で説明できる状態まで仕上げる」——これが、未経験者にとって最も確実で再現性の高いゴールです。まずは身近な題材を1つ決め、CRUDから手を動かしてみてください。
学習の全体像から見直したい方はプログラミング勉強法 完全ガイド、ポートフォリオで身につけたスキルを副業・収入につなげたい方は個人開発の副業は稼げる?もあわせてどうぞ。
免責:本記事は筆者の経験および執筆時点で一般に公開されている情報にもとづく情報提供であり、特定の転職成功・選考通過・成果を保証するものではありません。採用基準・評価の観点は企業・職種・時期・面接官によって大きく異なります。紹介するサービス・ツールの仕様・料金・提供状況は変わることがあるため、利用前に必ず各公式サイトの最新情報をご確認ください。最終的な転職活動・サービス選択の判断はご自身の責任で行ってください。