「AIで作ったポートフォリオって、バレますか?」

正直に答えます。バレます。

僕は未経験の方のポートフォリオを添削していますが、AIで作ったんだろうな感があふれている作品は、けっこうあります。

ただ、この記事で言いたいのは「使うな」ではありません。
使い方を変えれば、バレるどころか評価されます。


どこでバレるのか

1. 一部だけ急に整いすぎている

これが一番多いです。

他の部分は初学者らしい書き方なのに、ある箇所だけ妙に洗練されている。
書き方の水準が途中で変わるので、見ればすぐ分かります。

本人は「良いコードになった」と思っていますが、逆効果です。
全体のレベルと合っていないほうが目立ちます。

2. 「これ、どうやって実装したんですか?」で止まる

ここが本命です。

添削のとき、僕は必ず聞きます。
そこで答えられないと、コードを見るまでもなく分かります。

面接でも同じです。実際に僕が受けた面接では、コードは軽く見られただけでした。
その代わり聞かれたのがこれです。

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

つまりコードでバレるのではなく、口頭でバレます。

3. コミット履歴が不自然

  • コミットが3件しかない
  • 全ファイルが1回のコミットで追加されている
  • メッセージが「update」ばかり

作りながら進めた形跡がないと、どこかから持ってきたのではと思われます。

4. 使っていないコードが残っている

AIが出したコードをそのまま貼ると、使っていない変数や読み込みが残ります。
自分で書いていれば、たいてい気づきます。

5. 書き方が揃っていない

実務でも、僕が一番よく指摘されるのがここです。

Ahagate
ahaGate
AhaGate
aha_gate

どれが正解ということはありません。混ざっていることが問題です。
AIに書かせた部分だけ書き方が違うと、そこで分かります。


大前提:AIを使うこと自体は問題ありません

現場では全員が使っています。僕も実務で使います。
使ったことを責める人はいません。

判断基準は1つだけです。

自分の言葉で説明できるか

説明できるなら、AIで書いても「自分で作った」と言っていいと思っています。
説明できないなら、自分で書いていても同じことです。

実際、僕は自分で全部書いたアプリなのに、面接で動きを説明できずに落ちました。AIは関係ありません。


バレない使い方(というより、正しい使い方)

1. 構成とDB設計は、絶対にAIに渡さない

実務でも、僕はここだけは自分でやります。

内容
AIに任せていい機械的に書き換えられるところ/一度実装したのと同じところ/デザインやHTMLなど、誰が書いても同じになる部分
自分でやる全体の構成/DB設計

面接で必ず聞かれるのが「なぜこのテーブル設計にしたのか」です。
ここをAIに決めてもらっていると、その瞬間に終わります。

2. 「初学者が読めるコードで」と指定する

何も言わないと、短くて賢い書き方が返ってきます。
それを貼ると、自分の作品なのに自分が読めない状態になります。バレる原因の1番がこれです。

3. 自分が書いたコードを参照させる

すでに書いた部分をAIに見せて、「この書き方に合わせて書いてください」と頼みます。

これをやると、全体の書き方が揃います。
「一部だけ整いすぎている」という不自然さが消えます。

4. 分かるまで質問しまくる

返ってきたコードで分からない箇所があったら、そのまま貼らずに聞いてください。

  • なぜここでこの書き方をしたのか
  • この行がないとどうなるのか

相手はAIなので、何回聞いても嫌な顔をされません。ここで遠慮する意味はまったくないです。

5. 学習中は、エディタに組み込まない

VSCodeにAIを入れると、その場に勝手に書き込まれるので、理解していなくても進んでしまいます。

学習中はブラウザ版をコピペで使ってください。
どのファイルのどこに貼るかを自分で決める必要があるので、それ自体が練習になります。


面接では正直に言っていい

隠すほうがリスクです。聞かれたら正直に答えてください。

○ 評価される答え方

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

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

✕ 評価されない答え方

「AIは使っていません」(そのあと説明できずに詰まる)

「どこを自分で決めて、どこを任せたか」が言えると、むしろ実務を分かっている人に見えます。


もう作ってしまった人へ(今からできる対処)

ステップ1:全ファイルを読んで、説明できるようにする

分からない箇所は、AIに「なぜこう書いたのか」を聞いてください。分かるまで聞いていいです。

ステップ2:説明できない部分は、自分で書き直す

読んでも理解できないコードは、動いていても捨てたほうがいいです。
面接で必ずそこを聞かれます。

ステップ3:書き方を揃える

変数名やルートの書き方を1つに統一します。これだけで不自然さがかなり減ります。

ステップ4:機能を1つ、自分だけで追加する

小さくて構いません。非同期処理を1か所入れるのがおすすめです。

お気に入りボタンや、チェックの切り替えなど、押しても画面が切り替わらない動きを1つ作ってください。
面接で「このボタンを押したらどうなっているか」と聞かれたときに、答えられる場所になります。

ステップ5:ここからは記録を残す

何に詰まって、どう調べて、どう直したか。
この記録がそのまま面接の回答になります。


よくある質問

Q. AIを使わずに作ったほうが評価されますか?
A. そんなことはありません。見られているのは説明できるかどうかだけです。

Q. どこまでAIに任せていいですか?
A. 誰が書いても同じになる部分までです。構成とDB設計は自分で決めてください。

Q. 全部AIで作ってしまいました。作り直すべきですか?
A. 作り直す必要はありません。全部読んで、説明できる状態にしてください。それだけで見え方が変わります。


まとめ

  • バレます。特に「一部だけ整いすぎている」のはすぐ分かる
  • ただしコードでバレるのではなく、口頭でバレる
  • 判断基準は「自分の言葉で説明できるか」だけ
  • 構成とDB設計は絶対に自分でやる
  • 「初学者が読めるコードで」「自分の書き方に合わせて」と指定する

AIを使ったかどうかは、実はどうでもいい話です。
自分の作品を分かっているかどうかだけが見られています。

次に読む記事


ポートフォリオの無料添削をしています。「これどうやって実装したんですか」を一緒に確認できます。LINEから送ってください。