従来のソフトウェア工学は死んだのか? 「これは従来のソフトウェア工学が死んだということか?絶対にダメです。ソフトウェアエンジニアは、AIモデルのチューニングやトレーニングを行っていない人であっても、今や世界で最も活用されている人材の一つです。確かに、モデルのトレーニングやチューニングを行う人たちは、ソフトウェアエンジニアが使うツールセットを構築しているため、さらに活用されています。 しかし、ソフトウェアエンジニアにはあなたにとって2つの大きな利点があります。まず、彼らはコードで考えるので、実際にその下で何が起きているのかを理解しています。そしてすべての抽象化はリーキーです。ですから、Claude Codeや同等のプログラミングがあなたのために用意されているとき、ミスは起こります。 バグがつくでしょう。最適とは言えないアーキテクチャになるでしょう。だから、完全には正しくないでしょう。そして、内部で何が起きているのかを理解している人が、漏れが起きた際にそれを塞ぐことができます。 ですから、しっかりとしたアーキテクチャのアプリケーションを作りたいなら、適切に設計されたアプリケーションを指定したい、高性能に動かしたい、最善を尽くしたい、バグを早期に発見したいなら、ソフトウェアエンジニアリングのバックグラウンドが必要です。 従来のソフトウェアエンジニアはこれらのツールをはるかに上手に使えるでしょう。そして、今日のAIプログラムには適用できないソフトウェアエンジニアリングの問題がまだ多く存在します。それらを考える最も簡単な方法は、データ分布の外にある問題です。 例えば、二進ソートやリンクリストの逆表示を行う必要がある場合、彼らはその例を数え切れないほど見てきたので、非常に優れています。しかし、彼らの領域から離れ始めると、非常に高性能なコードを書かなければならず、新しいアーキテクチャや全く新しいアーキテクチャで動いたり、実際に新しいものを作ったり新しい問題を解決したりする場合でも、手作業でコードを書く必要があります。 少なくとも、そのような例が十分に増えて新しいモデルが訓練できるようになるか、あるいはこれらのモデルがさらに高度な抽象レベルを十分に推論し、独力で解読できるようになるまでは... そして覚えておいてください:平均的な需要は存在しません。平均的なアプリは、優れたアプリが埋めるニッチを埋めない限り、誰も欲しがりません。より良いアプリが市場のほぼ100%を獲得します。もしかすると、メインアプリよりもニッチな機能が優れていたり、安価だったり、そういった理由で、2番目に良いアプリに少し流れ込むことがあるかもしれません。 しかし一般的に言えば、人は何かの中から最高のものだけを求めています。だから悪いニュースは、2位や3位でいる意味がないということです。有名なグレンギャリー・グレン・ロスのシーンで、アレック・ボールドウィンが「1位にはキャデラック・エルドラド、2位にはステーキナイフセット、3位はクビだ」と言うシーンのように。 これは勝者総取りの市場ではまさにその通りです。悪いニュースは、勝ちたいなら何かで一番でなければならないということです。 しかし、あなたが得意とできる分野は無限にあります。自分にぴったりのニッチを見つけられ、その分野で最高になれるのです。これは私の昔のツイートに遡ります。そこでは「自分のやっていることで世界一になりなさい。これが真実になるまで、自分のやることを再定義し続けてください。」 そして、このAIの時代においてもそれは変わらないと思います。」