👩‍💻

with AI時代のソフトウェアエンジニアとは(2025年6月版)

に公開

はじめに:AI時代のエンジニアを取り巻く現状

ついにAIがコードを書く時代が到来しました。これまでのエンジニアにしかシステムを作れない時代の終わりが見えてきています。OpenAIのCPOは2026年までには人間のプログラマをAIは超えると話し、AnthropicのCEOも1年以内に99%のコードをAIが作成するようになると言っています。

Salesforceはエンジニアの新規採用を停止し、Microsoftやその他ITの大企業が軒並み2024年から2025年にかけて、AIが起因しているか明示していないものも含め、エンジニアやマネージャの大規模なレイオフを実施しています。 これはITエンジニアという職業の終わりを意味しているのでしょうか? この問いは部分的には正しくあり、別の側面では過剰な白黒思考でもあります。
今回はこの問いを考えるにあたり、エンジニアの仕事の変化、求められるスキルについて考えていくことにします。

この記事は2025年6月に執筆したものであり、それ以降の変化等を考慮したものではないことを断っておきます。

1. AIによって変化するエンジニアの仕事

AIによるコーディングの自動化

AIがコードを書き始める以前から、エンジニア以外がソフトウェアシステムを作ることは存在していました。わかりやすい例ではいわゆる「ノーコード」と呼ばれるサービスです。しかしながら社会全体としてみると期待されるほど活用されることはありませんでした。

ChatGPT、Claude、Gemini、DevinなどのAIは、ノーコードに存在した制約を取り払い、 自然言語を用いて指示をするだけでソフトウェアを作ることを可能としました。 これにより、予備知識をほとんど必要とせず、ソフトウェアシステムを作ることができるようになりました。いまや、AIエージェントの活用により、単にソフトウェアコードを書くだけでなく、実際に使えるようにするためのクラウド上のインフラ構築やデプロイメントといったことも可能になっています。

こうしてみると、エンジニアの仕事はなくなるように思えてきます。しかし、 エンジニアの仕事は本当にこれだけなのでしょうか?

エンジニアの仕事とは

AIに奪われるものばかり見ずに考えるには、エンジニア本来の仕事を考える必要があります。言うまでもなく、エンジニアの多くはコードを書くことでシステムを作っています。求人情報を見ると、必ずと言っていいほど特定のプログラミング言語の経験を求められています。それ以外にも要件定義、設計、テスト設計やテストコード実装、ドキュメント作成、プロダクト分析、プロダクトに利用するツール、サービス選定など多岐に渡ることをやっているはずです。もちろん、人によってはごく一部のみを担っている場合もあると思いますが…。

また「コードを書く」を書いたものの、実装するにはコードを書くだけでなく、コードレビューもあります。現在、AIが担っている領域はコード作成部分が大半です。それ以外も積極的な活用が行われていますが、コードの作成に比べるとやや限定的です。また実装上、コードレビューから人の手は完全には離れていません。

ここまでは、エンジニアの業務としての側面を見てきましたが、エンジニアに仕事を与えている経営者側から見るとどうでしょうか?経営者から見るとAIは非常に魅力的です。金銭的に見れば、ソフトウェア開発において人件費はコストにおける大きなウェイトを占めています。また人は簡単に増やしたり減らしたりできません(日本では特にその傾向があります。海外においては企業側のレイオフが比較的簡単ではありますが…)。AIの利用は、一般的にある程度のレベルならエンジニアを雇うより圧倒的に安価です。また利用開始も終了も非常に簡単です。それでは、経営者にとって人間のエンジニアを雇う理由はなんでしょうか?

ここには2つの視点があります。AIを導入・活用するにもソリューションドメインに対する知識が必要であること、そしてAIは責任を取らないことです。AIを触ったことがある人なら誰しもわかりますが、事前知識がない領域について、専門家レベルのアウトプットを生み出すのは難易度が高いです。世の中にある「AIでこんなアプリケーションが簡単にできました!」という記事において、既存の仕様が明確なシステムの模倣が多く存在しているのはそのためです。仕事として作られる価値あるシステムとは「すでに仕様が明確で簡単に模倣できるもの」ではなく「 既存にはない、簡単に模倣できない、差別化された価値があるもの 」が大半なのです。

また、現状として全体を通じて、現状のAIは「間違っても取り返しがつくもの」に限定されており、「間違ってしまうと問題があるもの」については、人の手が必ず入っています。Vibe Codingという、AIが作ったコードをそのまま受け入れるコーディングというものがあります。これを否定するつもりはなく、一定の価値ある手法であると認識しています。ただし、これをなんのプログラミング知識も持たない人は真似することができません。そうした人は問題が起きても対応できず、責任を取ることもできません。機密情報が漏れてしまうようなコードが書かれていても気づけませんし、実際に動かすと想定外の料金がかかるかも判断がつきません。またどのような選択肢の切り口があるのかの洗い出しも、それら選択肢ごとの判断もできません。このような状況において一定の責任を求められる場面において「ソフトウェア開発はAIにすべてを任せれば良い」とは言えないでしょう。逆を言えば、こうしたAIが生み出すものを、 これまで以上に一定の責任あるアウトプットに昇華させる ことが求められるとも言えるのです。

2. AI時代に求められるエンジニアのスキル

ここまでで簡単にAI時代のエンジニアの仕事について考察してきました。それではエンジニアに求められるスキルとはなんでしょうか?

より未来的に見れば、プログラミング言語といったスキルも不要になるかもしれませんが、少なくとも今後5年といったスパンでは必要とされるでしょう。それらの理解は、AIのアウトプットの理解を助け、必要な修正を行うために必須の技術であり、それらが急に不要となることはないでしょう。また、簡単なコーディングが不要になれば、こうした専門性を持つ人は相対的に減っていきます。逆にこのような専門性が必要とされる分野においてはより重要なスキルとされる可能性もあります。

次にAIを活用するうえで重要なのは、より適切なアウトプットを生み出すための要件定義、技術選定、アーキテクチャ設計です。これらが曖昧なままに進んでいる場合、残念ながらAIのアウトプットは一貫性を失いがちになり、AI時代の技術的負債を生み出すことになるでしょう。また特に非機能要件については、注意深く見る必要があります。非機能要件は作るプロダクトやサービスの持つ特性によって大きく異なります。そのため、開発において単に見えている機能に必要なことだけではなかなか最適な要件を洗い出すのが難しい部分です。

そしてこれらを支えるコミュニケーション能力は大事になります。こうしたAIだけで解決が難しい問題において、チームやステークホルダとのコミュニケーションは継続して重要となるはずです。
最後に、AIそのものを活用する知識や技術も必要です。AIは自然言語で指示すればよいと言えますが、そこに必要な情報をどう与えるか、どのようなサービスやツールを組み合わせて活用すれば、より最適な価値創造につながるかを考え続け、構築していく必要があります。

3. AIがある世界でのエンジニアのキャリア設計

AIがコーディングを担うようになる時代、エンジニアとしてのキャリア設計はこれまでと同じ道筋では通用しなくなりつつあります。とくに、「コードを書くことそのもの」が職業として成立し続ける前提は、今後徐々に崩れていくと考えた方がよいでしょう。

AIは今後ますます「中途半端なスキル領域」を飲み込んでいきます。たとえば「ある程度の知識があれば誰でも書けるコード」や「仕様が明確なCRUDアプリ」など、汎用的で正解が定まっている作業ほど、AIが高速かつ安定して代替していくからです。逆に、そのようなスキルセットに依存したキャリア設計をしている場合、リスクが高まっていくことを認識する必要があります。

こうした状況では、エンジニアが人間として価値を発揮するためには、上流工程への関与が今以上に重要になります。プロダクトの目的やビジネス要件の定義、非機能要件やアーキテクチャの設計、ステークホルダとの調整など、「そもそも何を作るべきか」「どう作るべきか」といった判断を伴う工程は、AIが苦手とする分野であり続けています。つまり、単なる仕様を満たすコードの作成そのものよりも、なぜそのコードが必要なのかを理解・設計する力が重視されるという転換です。

そのためのキャリア戦略としては、専門性を深める方向と、視野を広げる方向の両方を意識することが求められます。たとえば、特定ドメインの深い知識(医療、金融、教育など)や、セキュリティ・スケーラビリティといった高度な非機能要件に対する専門性は、AIに置き換えられにくい領域です。一方で、プロダクトマネジメントやUX、ビジネス設計など、より広い視点を持てるようキャリアの選択肢を意図的に増やすことも、AI時代を生き抜く有力な戦略となります。

もっとも、キャリア設計における根本的な考え方が変わるわけではありません。これまでと同様に「どのような価値を生み出したいか」「そのためにどのようなスキルや経験を積むべきか」を逆算して考える姿勢は引き続き重要です。むしろ、変化が激しい時代だからこそ、 自分なりの軸を持ち、継続的に問い直す姿勢がより強く求められる と言えるでしょう。

まとめ:AIが変化のすべてではない

with AI時代において、エンジニアの取り巻く環境は大きく変化を迎えているのは間違いありません。少なくとも、単にコードを書いていれば一定の評価が得られる時代は終わりました。コードを書くだけで評価されるには、全世界の知識を取り入れ、驚異的な成長を続けるAIとの競争になります。これは簡単なことではありません。むしろ不可能に近い状況であるとも言えるでしょう。一方で、エンジニアがこれまで向き合ってきた様々な問題のすべてを、AIが解決するわけではありません。これまでも大きな変化は何度も訪れています。これまで生き残ってきたエンジニアは何度もそれらに向き合い、自分自身の成長の機会として取り入れてきたはずです。AIにかかわらず、変化と向き合い、その変化を成長機会と捉え、より飛躍する原動力とできるかが、この先のエンジニアにはより求められるでしょう。

補足

本稿でも触れましたが、IT各社がAIを一因としたレイオフを実施していることは、同業者や業界を目指す人にとっては気が気でないニュースです。一方で各社の過去を見ると、環境変化や事業状況に伴い、何度も大規模なレイオフを実施しています。もちろん同じ要因をもとに複数の企業がレイオフを実施するという状況はなかなかなかったとも言えます。とはいえ、そうした過去を見るにAIがなければレイオフがなかったのかと言われればなかったとは言い切れないのです。ニュースサイトやアフィリエイト記事などは、基本的に読んでもらうことに重きが置かれています。そのために不安や好奇心を煽ることも多かったりします。一旦冷静になって読み解くことで、本当にこれらが継続する事象なのか、自分にとって重要な事柄なのかを判断するのが大事です。

AIのコーディング能力についても同様です。実務として各企業で作られるプロダクト開発における、複合的なスキルを必要とするコーディング能力を超えるのかという点で話しているのか、競技プログラミングのような「要件・仕様が明確なもの」に限定されているものなのかは重要です。こうした一歩引いた視点でも見る必要があることが、一過性の技術や知識でなく、より中長期に渡るスキルを身につけることにもつながるはずです。

Discussion