GitHub CopilotやClaude Codeが普及し、コードを書く速度は劇的に上がりました。
一方で「AIに任せたら意図と違うコードが生成された」「AIが書いたコードの意味を説明できない」という話もよく聞きます。
AIをうまく活用できているエンジニアとそうでないエンジニアの差はどこにあるのか。
いろいろ試してみた感覚として、差はコードを書く速さではなく「考える力」にあるのかなと思っています。
AIが得意なこと・苦手なこと
AIが得意なのはパターンの再現・変換作業・調査の補助など「手を動かす作業」です。
一方で苦手なのは文脈の理解・要件の解釈・トレードオフの判断——つまり「考える作業」です。
「何を作るか・なぜそうするか・これで正しいか」の判断は、やっぱり人間に委ねられたままだと感じています。
「考える力」が問われる場面
指示の精度がそのまま出力の質になる
「APIを作って」と頼むのと「EF Coreを使ってGET /api/usersを実装して。ページングはSkip/Takeで削除済みレコードは除外する」と頼むのでは出力の質が全く変わります。
AIへの指示文は、自分の思考の解像度を映す鏡のようだと感じています。
生成されたコードをレビューできるか
N+1クエリ・例外処理・セキュリティ上の問題——AIの出力をそのままコミットするのは少しリスクがあります。「AIの出力を評価できる目」があると、ぐっと安心感が違います。
今、意識していること3つ
- AIの最新動向にアンテナを張り続ける — AIツールは半年で別物になります
- 言語化・構造化の習慣 — 曖昧な思考のままAIに投げると、曖昧な出力が返ってきます
- 基礎技術との付き合い方 — AIの出力を評価するためにも、土台はやっぱり大切です
まとめ
AIが進化するほど、問いを立てる力・判断する力・言語化する力が効いてくる気がします。
ツールと一緒に思考力も少しずつ磨いていけたら、もっと楽しくなりそうだと思っています。
書籍紹介や各場面のより詳しい解説はこちらの記事にまとめています。