書類は通った。次は面接。

ここで落ちる未経験の方には、はっきりした共通点があります。
ポートフォリオについて聞かれたときに、答えられないことです。

偉そうに書いていますが、僕がまさにそれで落ちました。その話から始めます。


僕が実際に聞かれて、答えられなかった質問

当時のポートフォリオは、自問自答クイズアプリでした。
彼女が管理栄養士を目指していて、間違えた問題だけを集めた問題集をスマホで作れたらいいな、というところから作ったものです。

面接で何が起きたかを、順番に書きます。

1. コードは軽く見られただけだった

これは意外かもしれません。
コードを1行ずつ読まれることはありませんでした。ざっと目を通される程度です。

きれいなコードを書くことに時間をかけすぎる人がいますが、そこで勝負は決まっていません。

2. 相手側のサイトでテストを出された

その場で技術テストを受けました。
会社によってはこういう形式があります。ポートフォリオだけ準備していると面食らいます。

3. 「このボタンを押したら、どうなっているんですか?」

これが本命の質問でした。

あとから振り返ると、あれは画面読み込みのぐるぐる(ローディング)について聞かれていました。
非同期でデータを取りに行っている部分です。そこが説明のポイントでした。

でも僕は答えられませんでした。
「ルートからコントローラーで…」という話しかできなかったんです。

作ったのは自分です。動いてもいました。
それでも「押したときに何が起きているか」を言葉にできなかった。

ここから学んだことは2つです。

  1. 面接官はコードを全部読まない。その代わり、動きについて質問してくる
  2. 聞かれるのは「画面で何が起きているか」。ファイル名の話ではない

面接官が見ている3つのこと

  1. 本当に自分で作ったか
  2. なぜそうしたか説明できるか(=考えて作ったか)
  3. 詰まったときにどう動くか

すべての質問は、この3つのどれかを確認するためのものです。

言い換えると、見られているのは技術力ではなく過程です。
未経験の技術力なんて、どんなに頑張っても大したものにはなりません。それは相手も分かっています。


【企画について】質問1〜4

質問1:どんなアプリですか?(1分で説明してください)

回答のコツ:技術ではなく「誰の何を解決するか」から話す。

○「資格の勉強をしている人が、間違えた問題だけを集めて復習できるアプリです。

身近に管理栄養士を目指している人がいて、紙の問題集だと間違えた問題を探すのに時間がかかっていました。それをスマホで完結できるようにしました。」

✕「Laravelで作ったクイズアプリです。登録・編集・削除機能と認証機能があります。」

質問2:なぜこのアプリを作ろうと思ったのですか?

自分の経験や、身近な人の困りごとから話せると強いです。
ここが「教材のコピーではない」証明になります。

質問3:どんな人に使ってほしいですか?

ターゲットが決まっていると、機能を選んだ理由も説明できます。

質問4:実際に使ってもらいましたか?

使ってもらっていると強いです。「使ってもらって、こう言われたので直しました」まで話せると、それだけで印象が変わります。


【技術について】質問5〜8

質問5:なぜLaravelを選んだのですか?

正直に答えて構いません。「未経験可の求人で多かったから」でも問題ありません。
大事なのは自分で選んだ理由があることです。

質問6:このテーブル設計にした理由は?

ここは絶対にAIに任せてはいけない部分です。
自分で決めていないと、この質問で終わります。

質問7:他に検討した方法はありますか?

「他の方法も考えたけど、こういう理由でこちらにした」と言えると、考えて作ったことが伝わります。

質問8:セキュリティで気をつけた点は?

  • パスワードはハッシュ化している
  • 他人のデータが見えないように確認している
  • .env はGitHubに上げていない

この3つが言えれば十分です。


【動きについて】質問9〜11(ここが本番)

質問9:このボタンを押したら、どうなっているんですか?

僕が答えられなかった質問です。ここが一番聞かれます。

答え方は、画面の動きから順番に話します。

○「このボタンを押すと、画面を切り替えずにサーバーへ登録の要求を送っています。

送っている間は読み込み中の表示を出して、返ってきたら、その部分の表示だけを書き換えています。

ページ全体を読み込み直すと、勉強のテンポが止まると思ったのでこの形にしました。」

ファイル名から話さないでください。画面で何が起きているかを話します。

質問10:一番大変だったところはどこですか?

ここで「特にないです」と言うと終わります。
詰まらずに作れる未経験なんていないので、詰まった話をするほうが自然です。

質問11:詰まったとき、どうやって調べましたか?

この質問が一番大事だと思っています。入社後に一人で進めるかどうかが、ここで見られます。

○「まずエラー文を最後まで読んで、どのファイルの何行目かを確認しました。

そのあと、処理の流れに沿って一つずつ確認していきました。値がそもそも届いているのか、保存まで来ているのか、という順番です。

結果、送信先の書き方が間違っていることが分かりました。」

「検索したら出てきました」で終わらせないでください。切り分けた過程を話します。


【その他】質問12〜15

質問12:AIは使いましたか?

正直に「使いました」と答えてください。隠すほうがリスクです。

○「使いました。ただ、テーブル設計と全体の構成は自分で決めています。

AIに書いてもらった部分も、分かるまで質問して、自分の言葉で説明できる状態にしました。」

「どこを自分で決めて、どこを任せたか」が言えれば、むしろ評価されます。

質問13:開発期間はどれくらいですか?

1カ月前後が自然です。長すぎると「その間ずっと止まっていたのでは」と思われることもあります。

質問14:改善したい点はありますか?

○「スマホでの操作性です。実際に使ってもらって、ボタンが押しにくいと言われました。

あとは、問題数が増えたときの表示速度が気になっています。」

自分の作品の弱点を言えるのは、客観的に見られている証拠になります。

質問15:入社後、どんなことを学びたいですか?

チーム開発の進め方、レビューを受けながら書く経験、あたりが自然です。
正直に「一人でやってきたので、レビューを受けたいです」で構いません。


答えられないと落ちる質問トップ3

順位質問落ちる理由
1位このボタンを押したらどうなっているか自分で作っていないと判断される
2位詰まったとき、どう調べたか入社後に一人で進めない人だと思われる
3位なぜこの設計にしたか考えずに作ったと判断される

1位は、僕が落ちた質問です。ここだけは必ず準備してください。


事前準備:ボタン3つ分を声に出す

面接の前に、これだけはやってください。

作品の中でよく使うボタンを3つ選んで、押してから画面が変わるまでを声に出して説明します。

  1. ボタンを押すと、どこに情報が飛ぶのか
  2. そこで何を判断して、何を保存または取得しているのか
  3. 結果が画面のどこに、どう返ってくるのか

詰まったところが、そのまま面接で落ちる場所です。
僕はこれをやらずに面接へ行きました。やっていれば結果は違ったと思います。

開発中から記録を残しておく

作りながら、この5つを書き残しておくと面接がラクになります。

  • 何を実装したか
  • なぜその方法にしたか
  • どこで詰まったか
  • どう調べたか
  • どう解決したか

これがそのまま面接の回答になります。あとから思い出そうとしても、まず出てきません。


よくある質問

Q. 技術テストが出ることもありますか?
A. あります。僕のときは相手側のサイトでテストを受けました。ポートフォリオの準備だけでなく、基礎の復習もしておいてください。

Q. 答えられない質問が来たらどうすればいいですか?
A. 分からないことは正直に言って構いません。ただ「調べて、こう考えました」まで言えると印象が変わります。

Q. 緊張して話せません。
A. 一度、誰かに向けて説明する練習をしてください。声に出すと、分かっていない部分がはっきりします。


まとめ

  • コードは軽く見られるだけ。その代わり動きについて聞かれる
  • 一番聞かれるのは「このボタンを押したらどうなっているか」
  • 見られているのは技術力ではなく過程
  • AIは使ったと正直に言う。「どこを自分で決めたか」を添える
  • 面接前に、ボタン3つ分の動きを声に出して説明してみる

僕は自分で作ったアプリなのに、動きを説明できずに落ちました。
技術が足りなかったのではなく、自分の作品を分かっていなかっただけです。

ここは準備すれば防げます。

次に読む記事


ポートフォリオの無料添削をしています。「このボタンを押したらどうなっているか」を一緒に確認できます。LINEから送ってください。