AIによるプログラマ大量失業の個人的理解
「AIによってプログラマが大量に失業する」「AIを使いこなしたプログラマはさらに飛躍する」みたいないろんな意見があるのですが、自分の中で持っているイメージについて語ってみます。
従来のプログラマのあり方
ものすごくざっくりした図解で、様々なものを省いているのですが、おおよそプログラマは一番右側でよりよいコードを書くのが仕事でした。

| ロール | 説明 |
|---|---|
| 問題を抱える人 | 何らかの問題を抱えている人、そしてソフトウェアにお金を出してくれる人です。彼らの問題を解決することでご飯を食べられています。 |
| 問題を見つける人 | 世の中に存在する問題を 「解くことで利益に繋げられる課題」に変換できる人です。これは非常に稀有な才能の持ち主です。 |
| 解決法を具体化する人 | 具体化された課題をさらに技術的に可能な方法に落とし込み、どのくらい利益を上げられるのか、そのための予算感はどのくらいかといった要件に落とし込む人です。 |
| プログラマ | 要件をもとにシステムを実装する、実際に動くものを作る人です。 |
実際にはこれらのロールは網羅・区別されているわけではなく、グラデーションもありますが、説明のために非常に単純化したものだと考えてください。
AI時代の変化
すでにプログラマの目線でも様々なコーディングエージェントが出てきていますが、それだけでなく上流側でもAIのプレイヤーが増えるということが肝要だと考えています。

| 新たなプレイヤー | 説明 |
|---|---|
| 直接問題を解決するAI | たとえばあまった食材からレシピを参照して自動調理してくれるAIクッカーなど。 |
| マネージドAIサービス | たとえばレシピデータのワークシートを送信すると自動でチャットボットを作成してくれるノーコードAIサービスなど。大掛かりなシステムを独自に作らなくてもよくなる可能性があります。 |
| AIコーダー | 人間のプログラマより安価で高速に動くものを作ってくれるAIコーディングエージェント。 |
それによって以下のような影響が考えられます。
問題がAIによって直接解決されてしまう
ちょっとしたことであればAIに聞けば解決するようになり、そもそも問題自体がなくなってしまいます。それは従来ソフトウェアにお金を出してくれていた人がそのままいなくなる、ということを意味しています。
個人的にはこのことが一番大きく、AIで覇権を取ろうと各社が莫大な投資を行っている理由でもあると考えています。
AIサービスがスマートな解決法を提示する
AIを使ったマネージドサービスが不確実なシステム開発よりも確実かつ安価な解法を提示します。
するとシステム開発を行うメリットがなくなるので、プログラマの需要が大幅に減ります。
AIコーダーがプログラマの競合になる
さらに大量の学習データを使い、人間では勝ち目のない膨大な知識とタイピングスピードを持つAIコーダーがプログラマの直接の競合として参戦するようになります。
もちろん人間がコーディングエージェントを使いこなすことでポテンシャルを伸ばすことはできます。すでにちょっとしたレベルであれば実現可能なため、供給過剰を起こす可能性があります。
予算や利益がAIの利用料に消えてしまう
AIが各レイヤに入り込むことでシステム開発の予算が大幅に減ってしまうということが考えられます。それはそのままプログラマの人件費に直結します。
現在はまだAIの普及フェーズなので投資されたお金で安価にAIを使うことができますが、もしどこかのAIが覇権を取った場合は利用料の大幅な値上げが行われ、採算が合わなくなってしまうといった可能性も考えられます。こうした不確実性はすでにクラウドサービスでも見られた現象です。
個人的見解
AIコーディングエージェントを使えば確かにプログラマ個人の能力、すなわち生産性を伸ばすことは可能です。それをもって「プログラマの失業はない」と考えるのはやや見通しが甘く、むしろ皮肉なことに一人辺りの生産性が上がることで、かえってプログラマの需要は減り続ける…と思っています。
そのため「より左のレイヤ(要件定義、問題定義)へシフトするべきだ」という意見もあります。これは一理あると思いますが、AIが今より洗練されたときに人間が解くべき問題がそもそも激減しているという可能性があり、決して安泰ではないと思っています。
従来のシステム開発において実装がプログラマの特権だったため、これまでは「技術だけに集中すればいいボーナスタイム」となっていたというだけで、今後は要件・解決すべき問題を前提として、プログラマとしての職責を洗練していかなければならないのかなと考えています…が、機械に置き換えられている可能性もなきにしもあらず。
Discussion