はじめに
私は、エンジニアとして多くの開発やプロジェクトを経験してきたわけではありません。現時点では、初心者・未経験者に近い立場です。
そんな私にとって、生成AIは開発や学習を助けてくれる心強い存在です。技術の説明から、エラーの原因、コードやテストの作成まで支援してくれます。これから開発を学ぶうえで、生成AIをまったく使わないという選択も現実的ではないと感じています。
しかし、便利だからこそ疑問や不安があります。
- AIの生成したコードが正しいと、どう判断すればよいのか
- 動いたとしても、そのままプロジェクトに入れてよいのか
- 自分で説明できないコードを使ってよいのか
- AIに頼りながら、成長することができるのか
本記事では、公開されている調査資料を基に、初心者としてAIを使う際の行動指針を考えます。企業やプロジェクトによって状況は異なるため、「すべての開発現場がこうである」と断定するものではありません。
先に結論
| 場面 | 意識したいこと |
|---|---|
| AIへ依頼する前 | 目的、利用者、制約を整理する |
| コード生成中 | 小さな単位で依頼し、差分を確認する |
| 生成後 | 内容を説明し、テストと公式資料で検証する |
| プロジェクトへの反映 | Git、PR、レビューを通して共有する |
| 判断できないとき | AIに任せ続けず、人に相談する |
AIを使った開発は、すでに特別なものではない
IPAの「DX動向2026」では、国内企業の半数以上(58.0%)が、すでにAIを導入するか試験的に利用していました。情報通信業では、コード生成やシステム開発の支援にもAIが広く使われています。
海外の開発者を対象にしたStack Overflowの調査でも、8割以上(84%)がAIツールを利用している、または利用を予定していると回答しました。
こうした結果を見ると、これから開発を学ぶ人にとっても、AIは避けるものでなく、使い方を学ぶ必要のある道具になりつつあります。
ただし、AIを使うこと自体が開発の目的ではありません。
IPAの調査では、AIの効果を実感した企業でも、その多くは業務の効率化を挙げており、売上や利益の向上につながったという回答は3.9%でした。
AIは作業を速くしてくれても、「何を作れば価値になるのか」までは自動的に決めてくれません。AIに支援してもらえることが増えても、最終的な判断は人に残ります。
| AIに支援してもらえること | 人が判断すること |
|---|---|
| 技術や実装方法の候補を出す | 本当に必要な機能なのか |
| コードの生成・修正案を出す | 利用者の問題を解決できるのか |
| テストやエラー原因の候補を出す | 既存の仕組みを壊さないか |
| 改善策やリスクを指摘する | 将来も修正・運用できるのか |
| セキュリティ対策を提案する | 安全か、採用してよいか |
「コードが生成された」からといって「開発が成功した」とはいえません。
AIを使えば、必ず開発が速くなるのか
AIによる生産性向上について、調査結果は一様ではありません。
約4,900人の開発者を対象にした研究では、AIを利用したグループの完了タスクが約26%増えました。特に、経験の浅い開発者ほど効果が大きい傾向も報告されています。
一方、METRが行った研究では、使い慣れた大規模なOSSを扱う経験者がAIを使ったところ、作業時間が長くなりました。
一見すると反対の結果ですが、AIが役立つかどうかは、作業内容、開発者の経験、対象コードへの理解、AIに与える情報、生成物の確認時間などで変わります。AI自体の進化も速いため、一つの調査だけで「必ず速くなる」とは言えません。
DORAの調査が示すように、AIは、導入するだけで開発を改善してくれるわけではありません。
テスト、バージョン管理、開発環境、レビューの仕組みが整っていれば、AIを活かしやすくなります。反対に、要求が曖昧で確認の仕組みもなければ、問題のあるコードや技術的負債まで速く増やす可能性があります。
つまり、AI活用では「どの作業を任せるか」と同じくらい、「どのように確認するか」 が重要です。
AIの答えは「それらしく間違う」
AIの出力で難しいのは、明らかな間違いだけが返ってくるわけではないことです。
Stack Overflowの調査では、AIの正確さを信頼する開発者より、信頼しない開発者の方が多いという結果が出ています。また、多くの開発者が「ほぼ正しいが、完全には正しくない回答」に困っていると答えました。
一見正しそうなコードの一部だけが間違っている場合、初心者が問題を発見するのは簡単ではありません。そのため、次のような確認が必要です。
- コードの内容を自分で説明できるか
- 公式ドキュメントと一致しているか
- テストで期待した動作を確認できるか
- 既存機能への影響を確認したか
- 他の人によるレビューを受けたか
AIが速くコードを作れることと、そのコードを安心して使えることは別の問題です。
AI時代でも、技術の基礎は必要である
AIがコードを生成できるようになると、「これからはコードを書けなくてもよいのではないか」と考えたくなります。
しかし、IPAの「デジタルスキル標準ver.2.0」では、現在のソフトウェアエンジニアにも高い技術力が必要だとされています。そのうえで、仕事の範囲は実装だけに限られません。
- 利用者の要求を理解する
- システムを設計する
- チームで開発する
- テストで品質を確認する
- リリース後も安全に運用する
- 技術を顧客や事業の価値につなげる
IEEE Computer SocietyのSWEBOK V4でも、アジャイルやDevOpsに加え、アーキテクチャ、運用、セキュリティが重要な領域として整理されています。
ただし、「昔はコードだけ書ければよかった」ということでもありません。2014年のACM・IEEEの教育指針でも、チームワークやコミュニケーション、分析力、職業倫理は重視されていました。
これらは最近突然必要になったのではなく、開発の複雑化や部門横断化によって、これらの能力が成果を左右する比重は大きくなった、と考えるのが適切でしょう。
初心者がAIを使うときに考えたい6つのこと
調査資料を調べた結果から、AI利用時に考えたいことを6つまとめました。
1. コードを求める前に、問題を整理する
「何を解決したいのか」「誰が使うのか」「期待する結果や制約は何か」などを整理します。問題が曖昧なままでは、AIが正確にコードを生成しても、必要としていたものとは異なる可能性が十分にあります。
2. 一度に大きな変更を任せない
一つの目的に絞り、小さな差分で変更し、一段階ごとに確認します。AIに多く書かせることより、自分が確認できる大きさに制御することが重要です。
3. 説明できないコードを放置しない
何をする処理なのか、なぜこの方法なのか、どのような場合に失敗するのかを確認します。AIの説明だけでなく、既存コードや公式ドキュメントも調べ、レビューで説明できる程度まで理解することを目標にします。
4. 「動いた」と「正しい」を区別する
一度動作しただけでは、コードが正しいとは限りません。空の値、不正な入力、既存機能への影響、エラー時の動作、セキュリティなども確認します。
5. AIに渡してよい情報か確認する
APIキーやパスワード、個人・顧客情報、非公開コード、社内資料などを、許可なく外部のAIサービスへ送信してはいけません。サービスの設定と所属組織のルールを確認します。
6. AIを学習の代替ではなく、補助にする
AIを使わないことだけが学習ではありません。しかし、答えだけを受け取っていると、自分の判断基準が育たない可能性があります。
- AIに聞く前に、自分なりの原因や方針を考える
- 完成コードだけでなく、理由や選択肢を説明してもらう
- テストケースは自分でも考える
- 最後に公式ドキュメントを確認する
- 学んだ内容を自分の言葉で記録する
WEFの「Future of Jobs Report 2025」でも、AIやセキュリティの知識とともに、分析的思考、好奇心、継続的学習などが重要性の高まる能力として挙げられています。
特定ツールの操作だけでなく、技術を学び続ける方法そのものが必要です。
目指したいエンジニア像
今回調べる前は、「コードを書く能力の価値が下がり、代わりにAIを使う能力が重要になる」という単純な構図を考えていました。
しかし、基礎知識がなければAIの出力を評価できません。
一方で、コードを書けるだけでも、顧客の問題を理解し、安全に運用できるとは限りません。
これから必要なのは、次の能力を組み合わせることだと考えます。
- 技術とプログラミングの基礎を持つ
- 解決すべき問題を整理する
- AIに任せる範囲を判断する
- AIの出力を理解・検証する
- 設計、テスト、運用、セキュリティまで考える
- 自分の考えを説明し、分からない点はチームのメンバーや各担当者に相談する
- 継続的に学び、判断基準を更新する
初心者の段階ですべてを身につける必要はありません。まずは基礎と専門性を育てながら、分からないことを調べ、AIや人の助けを借り、結果を確認できるようになることが目標です。
おわりに
AIを正しく用いる力とは、上手なプロンプトを書く力だけではありません。
- 何をAIに任せるか決める
- 出力を理解し、テストや資料で確認する
- リスクを判断し、必要なら出力を捨てる
- 分からないことを人に相談する
- 最終的な成果に責任を持つ
AIがコードを生成しても、そのコードを採用するのは人です。AIが提案したことを理由に、確認する責任までAIへ渡すことはできません。
私は、技術の基礎を学びながら、AIの出力を自分の判断で扱えるエンジニアを目指したいと思います。
「コードを書いてもらうこと」から、「生成された結果を理解し、検証し、引き受けること」へ。
それが、初心者である自分がAIと開発を進めるうえで、まず意識したいことです。
参考資料
- IPA「DX動向2026」
- IPA「デジタルスキル標準ver.2.0・ソフトウェアエンジニア編」
- Stack Overflow Developer Survey 2025:AI
- DORA:State of AI-assisted Software Development 2025
- DORA:AI導入に伴うトレードオフの分析
- INFORMS:The Effects of Generative AI on High-Skilled Work
- METR:2026年の研究設計に関する更新
- IEEE Computer Society:SWEBOK V4
- ACM・IEEE:Software Engineering 2014
- NIST:Secure Software Development Framework
- World Economic Forum:Future of Jobs Report 2025――Skills Outlook