ソフトウェアが安くなっている。それで?
目次
ClaudeとVercelを使った一人の開発者が、5人チームで6ヶ月かかっていたものを週末で作れる。そのソフトウェアは劣っていない。むしろ優れていることもある。
この記事はAIがエンジニアを置き換えるかどうかの話ではない。その問いはほとんど的外れだ。もっと面白い問いはこれだ。ソフトウェアを作るコストがゼロに近づいたとき、何が変わるのか。そして、それはあなた自身にとって何を意味するのか。
ここまでの経緯
ソフトウェアのコストは3つの波を経て下がってきた。それぞれの波が、かつては多くのお金や専門知識を必要としていた摩擦を一つ取り除いた。
第1波(2006年):クラウドがインフラコストを消した。 AWS以前は、サーバーを買う必要があった。スタートアップを立ち上げるには、コードを1行も書く前に$100kかかった。AWS以降は月$200になった。一夜にして、一人の創業者が10人チームと同じスピードで動けるようになった。
第2波(2010年代):オープンソースがツールコストを消した。 認証、キュー、ORM、ログ、Webフレームワーク。すべてコミュニティが作り、無償で公開した。今日では、午後一つでオープンソースのコンポーネントからプロダクション水準のシステムを組み上げられる。
第3波(現在):AIがコードを書く人件費を消しつつある。 この波が違うのは、1つのステップを安くするだけでなく、「アイデアがある」から「動くソフトウェアがある」までの全体のギャップを圧縮しているからだ。
どの波も内側からは緩やかに感じられ、振り返ると明白だった。早く適応したエンジニアはうまくやった。待ちすぎた人は自分のスキルがコモディティ化するのを目の当たりにした。
コストは消えていない。移動した。
多くの人が誤解していることがある。ソフトウェアを「作ること」は安くなっているが、役に立つソフトウェアを作ることは同じペースでは安くなっていない。
こう考えてみよう。ClaudeにHospitalの患者スケジューリングシステムを作らせるとする。1時間でコードを書ける。でも誰かがまだ知っている必要がある。看護師はシフト交代時に実際どうやって患者を引き継ぐのか。患者の予約が重複したらどうなるのか。どの科にどの医師が当直しているのか。コードは簡単な部分だ。ドメイン知識こそが難しい部分だ。
AIが今日うまく扱えること:
明確な仕様が与えられたエンドポイントを書く
データベーススキーマをCRUD操作に変換する
説明した関数のテストを生成する
見慣れないコードが何をしているか説明する
まだ人間が必要なこと:
仕様が実際に何を言うべきか見つけ出す
自分のニーズを言語化できないユーザーと話す
3つの合理的なアプローチのどれに賭けるか決める
どのエッジケースが本番で爆発するか知る
「これはそもそも作るべきではない」と言う
コストはコードを書くことから、何を書くべきか知ることへ移動した。そのギャップは常に存在していた。今はそれが唯一重要なギャップになった。
最初に負けるのは誰か
一部の仕事カテゴリーは本当にリスクが高い。どれかについて正直に向き合う価値がある。
コモディティソフトウェアエージェンシー。 こういうやつだ。「要件を送ってください、MVPを作ります。」モデル全体が実装の時間を売ることだった。実装が10倍安くなれば、そのマージンは崩壊する。今生き残っているエージェンシーは、一つのドメインに特化して、ただの手ではなく判断力を提供しているところだ。
例えば:
- 中規模小売業者向けにECサイトを作るエージェンシーは今厳しい状況にある。
- 金融機関向けのコンプライアンスソフトウェアを作り、規制の全体像を熟知しているエージェンシーはまだうまくやっている。
主に翻訳作業のジュニアロール。 典型的なジュニアタスクはこうだ。
- 明確な仕様がある、実装してください。
- このエンドポイントを書く。
- このフィールドを追加する。
- 原因が特定済みのこのバグを直す。
これはAIが得意とすることそのものだ。この種の仕事しかもらえないジュニアは、最初から曖昧な問題に投げ込まれるジュニアより難しい立場にある。
成果ではなく時間で請求するコンサルタント。 あなたの価値が:
コードを速く書ける。
ということなら、それは弱まっている。あなたの価値が:
医療調達の仕組みを知っていて、6ヶ月費やす前にどのインテグレーションがロールアウトを台無しにするか教えられる。
ということなら、それはどこにも行かない。
パターンはこうだ。時間がかかるから高かった仕事は価値を失っている。希少な知識が必要だから高かった仕事は失っていない。
安くならないもの
4つのことは本当に自動化が難しく、他のすべてが安くなるにつれてより価値が高くなりそうだ。
ドメイン知識。 医療ソフトウェアをもう一度考えよう。コードが複雑だから難しいのではない。臨床ワークフローが具体的で、規制要件が具体的で、間違えた場合の結果が具体的だから難しい。そのどれもトレーニングデータセットには入っていない。そのソフトウェアを使う人たちと同じ部屋で何年も過ごすことで得られる。
大規模な本番システムのデバッグ。 10個のサービスと6年分の積み重なった複雑さを持つ分散システムで午前3時に何かが壊れたとき、全体のメンタルモデルを持つエンジニアが必要だ。データがどう流れるか、先週何が変わったか、どのサービスがメモリ圧力下で誤動作することが知られているか。AIはログ検索を手伝える。でも、このエラーが常にpaymentのリトライキューが詰まっていることを意味すると直感的に知っている人を置き換えることはできない。
不確実性の中での判断。 これがほとんどの仕事だ。3つのアプローチがある。要件は不完全だ。一つを選んでコミットする必要がある。良い判断は、過去に間違えて、何を重視すべきか学んだことから生まれる。そこに近道はない。
信頼。 ユーザーは信頼する人や会社のソフトウェアを選ぶ。信頼は安定してリリースし、インシデントをうまく処理し、何か壊れたとき正直でいることで積み上げられる。年単位で蓄積される。安いAI生成ソフトウェアで市場が溢れたとき、信頼されるプロダクトの価値は下がるのではなく上がる。食品に例えると、工場製造食品が安くなったとき、人々は信頼できる源から来た製品に以前より多く払うようになった。
あなたのレバレッジは変化している
上のすべての実践的な要約はこれだ。
5年前、多くのエンジニアにとっての天井は「正しいコードを速く書けるか?」だった。それが制約だった。その制約が緩みつつある。
今、複利で効く技術はこれだ。
- 問題の定義。 曖昧なビジネスニーズを受け取り、明確で作れるものに変える。これまで求められなかったから、多くのエンジニアがここを苦手とする。
- ドメインの深さ。 何をすべきか指示されなくても良い判断を下せるほど、特定の業界や問題領域を知ること。
- コミュニケーション。 プロダクトマネージャー、CFO、または顧客に技術的なトレードオフを説明すること。明確なデザインドックを書くこと。自分が所有していない決定に影響を与えること。
- センス。 何を省くか知ること。「十分に良い」が本当に十分に良いときと、そうでないときを知ること。
これらは新しい技術ではない。腕の良いエンジニアは常にこれらを必要としてきた。変わっているのは、これらがキャリアの早い段階で重要になり、純粋な実行速度に対して相対的にもっと重要になっているということだ。
有用なセルフテスト。もしコードを書くことを仕事から全部取り除いたら、あなたはまだどんな価値を提供できるか?その答えが今のあなたのレバレッジのだいたいの尺度だ。
実際に何をするか
具体的なアドバイスを、空虚なスローガンなしで。
問題に近づく。 顧客との電話に参加する。サポートチケットを読む。自分が作るものを使っている人と話す。実際の問題から遠ければ遠いほど、あなたの貢献はモデルが生成できるものに見える。近ければ近いほど、本当に再現が難しいことを知るようになる。
専門を選んで深く掘る。 「フルスタックWebデベロッパー」はコモディティだ。「決済処理を深く理解していてコンプライアンスの制約がどこにあるか知っているエンジニア」は違う。深さは複利で効く。あるドメインに2年間本当に集中することで、再現に2年かかる知識が生まれる。汎用的な広さは同じようには複利にならない。
書くことに投資する。 RFC(実装前に技術的な決定を提案する文書)、デザインドック、ポストモーテム(本番で障害が起きた後に書く振り返りレポート)であれ、明確に書くエンジニアは自分の思考を見える形にする。見える思考は昇進し、聞かれ、実装される。コード自体で差別化が難しくなるにつれて、これはより重要になる。
ツールを使う。 AIアシスタントをうまく使いこなすエンジニアは、そうでないエンジニアより速く動けるようになる。判断をモデルに委任することではない。判断を必要としない部分に費やす時間を減らして、判断を必要とする部分に費やせる時間を増やすことだ。
楽観的な読み方
カメラが安くなったとき、より多くの人が写真を撮った。プロのカメラマンは消えなかった。消えたのは凡庸な写真のための市場だ。床が上がったから天井も上がった。
ここでも同じことが起きている。安いツールは汎用的なソフトウェアを作る。誰もが動くアプリをリリースできるようになったとき、特定の人の難しい問題を解決するソフトウェア、その問題を本当に理解している誰かが作ったもの、は以前より価値が高い。
コモディティソフトウェアの市場は縮んでいる。信頼できる人から来る、自分の働き方に本当に合った、正しいソフトウェアの市場は広がっている。
座って考える価値のある問い
クラウドの波をうまく乗り越えたエンジニアは、AWSの学習を拒否した人ではなかった。早く学んで、それを使ってより多くのことをやった人たちだった。オープンソースの波も同じ話だ。
この波も違わない。うまくやるエンジニアは、AIが苦手なことを見つけ出し、そこに力を入れて、それ以外のすべてにAIを使う人たちだ。
ソフトウェアは安くなっている。あなたの価値が:
コードを書いていて、それに時間がかかる。
だったなら、それは問題だ。あなたの価値が常に測りにくいものだったなら、つまり何を作るべきか知ること、それがなぜ重要か理解すること、すべての制約と曖昧さが残ったまま現実の世界でそれを実現すること、それは機会だ。
あなたはどちらになりつつあるか?