AI時代にエンジニアのスキルはどう評価される?コーディング面接の最新調査
公開日
開発生産性
近年、ChatGPTやGitHub CopilotといったAIコーディングアシスタントの普及により、ソフトウェアエンジニアの業務スタイルは大きく変化しています。コードの自動生成やバグ修正のサポートが日常的になる中、採用面接や人事評価において「エンジニアのスキルをどのように測るべきか」という新たな課題が多くの企業で浮上しています。
本記事では、コーディングスキルの評価と実証手法の変化について調査した研究論文「Evolving Enactions of Expertise: Software Engineers’ Evaluation and Demonstration of Coding Expertise with AI Coding Assistants」に基づいて解説します。本調査は、実務経験のあるソフトウェアエンジニア16名を対象とし、AIツールの利用を許可した模擬ライブコーディング面接を通じて、面接官と候補者の相互作用を分析したものです。
変化する評価基準と求められる追加の証拠
AIツールが利用可能になったことで、コーディング面接のあり方は見直しを迫られています。しかし、評価の軸となる要素そのものが完全に覆ったわけではありません。
根本的な評価基準は維持される
面接においてAIツールの使用が許可されても、面接官が候補者に求める本質的なスキル要件は大きく変わりません。タスクの要件を正確に理解し、適切なアプローチを構築し、エラーに対処する能力は依然として重要視されています。AIがコードを生成したとしても、その構造が適切か、要件を満たしているかを判断するのは候補者自身だからです。また、生成されたコードの動作や論理を他者にわかりやすく説明する能力も、これまで以上に明確な評価対象として扱われています。
出力結果だけでは不十分な理由
評価基準の項目は変わらないものの、それを確認するために必要な「証拠」の集め方は変化しています。従来の面接では、要件通りに動くクリーンなコードを出力できれば、それがスキルの証明となっていました。しかし、AIを利用すれば経験の浅い候補者でも表面上は優れたコードを提示できてしまいます。そのため面接官は、リアルタイムのやり取りの中で候補者にコードの一部を変更させたり、想定外の入力が来た場合の挙動を質問したりと、深い理解度を探るための追加の質問を積極的に行うようになっています。
新たなスキルの台頭と見えなくなるプロセス
AIアシスタントの導入は、専門性をアピールする新しい手段を生み出しました。その一方で、これまで評価の対象となっていた一部のプロセスは観察が難しくなっています。
専門性を示す新しい行動
AI環境下では、ツールそのものを適切に使いこなす能力が新たなコーディングスキルとして評価されます。候補者がタスクの特性に応じてどのAIモデルを選択するか、要件を満たすためにどのようなプロンプトを入力するかといった行動が、タスク理解度を示す指標となります。また、AIが提示した複数の解決策の中から、将来の保守性や拡張性を考慮して最適なものを選ぶ判断力も重要です。以下の図表は、実際の調査セッションで候補者がどのようにAIツールを選択・活用したかを示しています。
図表1:調査セッションにおけるタスクとAIツールの利用状況の一部
| セッション | タスク内容の要約 | 使用された外部アシスタンス |
|---|---|---|
| S1 | LLMを使用して対象読者に合わせたテキスト書き換えツールの構築 | ChatGPT (1回), Google検索 (2回) |
| S3 | 長いURLを短縮し、再度解決するURL短縮ツールの設計 | Visual Studio Code内蔵Copilot (45回) |
| S5 | セルフアテンション機構(Self-Attention Mechanism)の実装 | 社内ChatAI (2回), Perplexity (1回), Google検索 (1回) |
| S6 | 複数の特徴に基づいて動物の種別を特定する機械学習モデルの構築 | DeepSeek (4回), ChatGPT (3回), Google検索 (2回) |
| S12 | XY平面上の座標データから原点に最も近いk個の点を返す処理の実装 | ChatGPT (7回), Google検索 (1回) |
AIによって隠れてしまう能力
一方で、AIがタスクを一気に処理してしまうことで、候補者の思考プロセスが見えにくくなるという問題も発生しています。従来であれば、候補者が複雑な課題をどのように小さなステップに分解し、段階的にコードを組み上げていくかが重要な評価ポイントでした。しかし、AIが一度の指示で完成に近いコードを出力してしまうと、タスクの分解能力や、エラーを自力で特定して修正するプロセスを面接官が直接観察する機会は失われてしまいます。
面接官が重視するポイントによる視点の違い
AIツールがもたらす影響は、面接官がコーディングのどのプロセスを重視するかによって受け止め方が異なります。
設計やロジックを重視する場合
ソフトウェア開発において、コードの記述よりも前段の要件定義やシステム設計を重視する面接官は、AIの恩恵を積極的に受け入れる傾向があります。彼らにとって、定型的なコードの実装はすでに解決済みの課題であり、AIに任せればよいという認識です。そのため、生成されたコードの細かな文法よりも、課題の全体像をどう捉え、どのようなアーキテクチャを採用するかといった高次なロジックの構築能力に評価の焦点を当てます。
図表2:コーディング面接における評価基準の要約と変化
| 評価フェーズ | 評価基準の例 | AI導入による評価方法の変化 |
|---|---|---|
| コード計画 | タスクの理解、アプローチの開発 | 再定義された(新たな証拠が必要)、かつ見えにくくなった |
| コード実装 | エラー処理、段階的なコード開発 | 見えにくくなった(AIが自動化するため) |
| コード実装 | コードの説明 | 再定義された(生成コードを自分の言葉で語る必要がある) |
| 実装後 | コードの有効性、タスク要件の達成 | 再定義された(結果だけでなく選定プロセスも問われる) |
実装プロセスを重視する場合
対照的に、実装のプロセスそのものを重要視する面接官は、AIの出力結果に対して厳しい視点を持ちます。AIが生成したコードは必ずしもパフォーマンスが最適化されておらず、大規模なプロジェクトでの拡張性や読みやすさに欠ける場合があるからです。このような面接官は、候補者がAIの限界を理解し、不十分なコードをどのように手動で修正・改善していくかという点に注目してスキルを判定します。
生産性への期待が引き起こす評価のズレ
AIツールの利用が前提となると、「短時間でより多くのタスクをこなせるはずだ」という生産性に対する期待が自然と高まります。この期待値の変化が、面接の場で思わぬミスマッチを生んでいます。
高まる生産性への要求
面接官は明示的に生産性を評価基準に設定していなくても、無意識のうちに通常より高い成果を求める傾向があります。AIが使えるにもかかわらず開発スピードが遅かったり、簡単なバグ修正に手間取ったりすると、「ツールの効果的な使い方がわかっていない」としてスキル不足とみなされることがあります。面接の時間内で解決すべき課題の難易度を、あえて高く設定するべきだと考える面接官も存在します。
面接官と候補者のすれ違い
この生産性への期待と、専門性を証明したいという候補者の心理が衝突することがあります。ある候補者は、AIに頼り切ることで「コードを理解していない」と見なされることを恐れ、あえてAIの使用を控えて自力で解こうとしました。しかし面接官からは、逆に「効率的なツールを使おうとしない非生産的なアプローチ」とネガティブに受け取られてしまいました。反対に、生産性をアピールするためにAI出力をそのまま多用した候補者が、コードの論理構造を説明できずに評価を下げるケースも確認されています。
今後の採用・評価に向けた組織の対策
こうした評価のズレを解消し、AI時代に適したスキル評価を行うためには、企業や組織側で新たな環境整備と共通認識の形成を進める必要があります。
プロセスを可視化する環境づくり
候補者がどのような意図でAIに指示を出し、生成されたコードをどう評価して組み込んだのかという一連のプロセスは、画面を見ているだけでは伝わりにくいものです。面接官がこの見えにくい専門性を正確に判定できるよう、プロンプトの履歴やAIとの対話プロセスを記録・要約する評価専用ツールの導入が求められます。これにより、最終的なコードの出来栄えだけでなく、ツールと協働する過程のスキルを公平に評価できるようになります。
評価基準の共通認識を形成する
最も重要なのは、組織全体で「AI時代におけるコーディングスキルとは何か」「生産性とスキルのバランスをどう取るか」についての合意を形成することです。現場のエンジニアと人事担当者が協力し、AIの現在の能力と限界を踏まえた上で、面接で何を評価すべきかを明確に言語化する必要があります。このような共通認識を持つことで、候補者も迷うことなく自身のスキルを適切にアピールできるようになります。
まとめ
AIコーディングアシスタントの登場は、ソフトウェアエンジニアに求められるスキルの本質を変えるものではありません。しかし、その専門性をどのように証明し、どのように評価するかというプロセスには劇的な変化をもたらしています。企業はこれまでの出力結果偏重の評価から脱却し、AIというパートナーといかに協働し、課題を解決していくかというプロセスそのものを評価する体制へと移行していく必要があります。
生成AIの導入や活用にお困りですか? 弊社のサービス は、開発チームが抱える課題を解決し、生産性と幸福度を向上させるための様々なソリューションを提供しています。ぜひお気軽にご相談ください!
参考資料: