この記事は、あるたとえ話で始まり、最後までそれを手放さない。コーヒーを淹れに行っている間に、コンパイルが通りテストも通る 1,000 行を書き上げてしまう、きわめて有能なジュニアプログラマーがいる。しかしそのプログラマーにはアーキテクチャの勘がなく、背後にある意図を理解する前にコアロジックをリファクタリングしてしまい、今日直した規約を明日には忘れている。著者によれば、そんな人材に監督なしで本番環境へ直接プッシュさせる人はいない — 厳格なレビュー、明確な境界、そして各段階での証拠の提示を求めるはずだ。それにもかかわらず、業界はコーディングエージェントに対してまさにその過ちを犯している、というのが著者の主張である。

そこから著者は、記事の土台となる区別を導き出す。使い捨てのスクリプトやプロトタイプであれば、バイブコーディング は魔法のように感じられる。しかし長く使われ高い信頼性が求められるエンタープライズソフトウェアにとっては、著者のたとえでいえば、ペイントソフトで海を渡る橋を設計するようなものだ。スピードは本物であり、その背後に積み上がっていく負債もまた本物で、著者はそれを 信頼の負債 と呼ぶ。示されるメカニズムは、制約がどこにあるかの移動である。人間が 1 行ずつタイプしていた頃は、出力の物理的な限界が、同時に脳にコンテキストを吸収し、アーキテクチャの境界について考え、無意識の品質チェックを行う時間を与えていた。生成がもはやボトルネックでなくなると、人間の注意力とレビューの処理能力がボトルネックになる — そして、プルリクエストを開いて差分に目を通すという従来の対応は、エージェントが数秒のうちに複数のマイクロサービスにまたがる数百行を生成し、データベーススキーマを変更し、新たな依存関係を持ち込むような場合には破綻する。

著者は、この枠組みが自分の発明ではないことを明言し、Ahmed E. Hassan による Software Engineering 3.0 とエージェント型ソフトウェアエンジニアリングに関する研究の影響を挙げている。そのうえで、その理論を理解することと、それをチームの日常的な身体感覚にすることとの間にはまだ隔たりがあると論じ、このコラムをプロンプトの小技やプラグインのチュートリアルではなく、実践とテンプレートによってその隔たりを埋める試みとして位置づけている。

要点

  • 記事が述べる失敗は、AI が仕事を減らさないことではなく、仕事の場所を移すことにある。コードを書く苦労は、コードを読み、後始末をする苦労に変わる。エージェントを周囲のエンジニアリング管理の仕組みを刷新せずに速いタイプライターとして扱えば、10 倍の成果ではなく、システム規模の惨事が高速で生み出される。
  • 著者の主張は、ボトルネックがコード生成から人間の注意力とレビューの処理能力へと移り、それが従来のプルリクエストレビューを破綻させるというものである。出てくるものは局所的には極度に最適化されている一方で、全体としてのロジックは断片化しているかもしれない、と特徴づけられている。
  • AI の時代にソフトウェアエンジニアリングは終わったという主張は、土木工学とのアナロジーによって退けられる。著者によれば、土木工学はもともと完璧な鋼棒を手で鍛え上げることではなく、公差のある材料とミスをする作業者を前提に、冗長な設計、安全率、検査基準によって信頼できる橋を生み出すことだった。
  • 新しい分野について著者が示す定義は、このアナロジーから導かれる。人間と、確率的で信頼性の低い AI のチームメイトからなる混成チームから、体系的なエンジニアリング上の制約によって、絶対的に信頼できるソフトウェアを継続的かつ安定的に届ける方法 — より平易にいえば、非決定的な魔法を決定論的なエンジニアリングの檻の中に入れること — である。
  • コラムの予定としては、今後展開するいくつかのメカニズムが挙げられている。エージェントの疲れ知らずな性質を境界テストやリファクタリングに活かすこと、緩いプロンプトをエージェントが安全に自律できる境界を定めるインテント契約に置き換えること、差分ベースのレビューを Merge-Readiness Pack(MRP) による証拠チェーンの監査へと格上げすること、1 人と 1 エージェントから 10 人と 100 の並行エージェントへの移行に向けて自動化された調整パイプラインを設計すること、そして Go や Rust のような、あえて退屈で制約の厳しい強い型付け言語こそが、この状況でエンタープライズシステムのより堅固な基盤になるという議論である。これらはコラムの今後のテーマとして示されたものであり、この記事が結論として立証したものではない。
  • この記事はコラムの第 1 回であり、4 つのモジュールと条件付きの第 5 モジュールからなる全 14 回の講義の概要など、販売のための構成も伴っている。その議論は著者自身の読書と自身の開発パイプラインに基づく著者自身の立場であり、記事はそのいずれについても測定結果を報告していない。

背景

この記事は、レビューのボトルネック が他の情報源から名付けているのと同じ診断 — エージェント支援による開発のデリバリーを制約しているのは生成能力ではなくレビュー能力である — に到達しており、それを明示的に負債のメタファーと結びつけている。ソフトウェアエンジニアリングは終わるのではなくエンジニアリングの黄金時代に入りつつあるという枠組みは、バイブコーディング についてなされるより強い主張と対立する位置にこの記事を置く。一方で、Hassan の SE 3.0 の研究に依拠している点で、この記事はこの wiki の エージェント型エンジニアリング に関する他の資料と並ぶものとなっている。

これが実務者をどこに置くかについての著者自身の立場は、ツールの選択ではなく役割の選択として示されている。制御を失った自動運転車の中で叫ぶ乗客になるか、それとも AI レーシングチームの指揮官になるか、である。記事は、このコラムでは数か月で古びるプロンプトのテクニックも、特定のツールのインストールも扱わないと明言している。