Le développement logiciel à l’ère des agents IA(「AI エージェント時代のソフトウェア開発」)は、生成 AI エージェントの台頭を、ツールの変化ではなく組織の変革として提示する記事である。その中心的な主張は、開発者はもはや主にコードを書くのではなく、複数の専門化したエージェントが並行して働く制作を指揮し、それらを舵取りし、調整し、導く「指揮者」になるというものである。記事はこの役割を 拡張された開発者 と呼んでいる。

この前提から、記事はチームの組織のあり方について帰結を導く。採用のペースは落ち、拡張された役割を担える人材が優先されるようになる。チームは縮小する一方でデリバリーのサイクルは大幅に速まり、単独の指揮者ではなく、拡張された開発者のペアが組織の基本単位として浮かび上がる。記事によれば、制約となる要因はもはや技術的なものではなく機能的なもの、すなわちエージェントに渡されるビジネスニーズの質である。

記事はさらにこの議論を、オフショア開発、ローコード/ノーコード、CI/CD パイプライン、ジュニア開発者の位置づけに当てはめ、最後に、その結果として生まれる組織を、全面的に「プロダクトファースト」を貫くアプローチを可能にするものとして提示している。

要点

  • 最近のエージェントでは、チームがアプリケーションの不変条件を設定用の成果物 ── 一般には Markdown ファイル ── に明示的に記述できる。そこには目標とするアーキテクチャ、テストとモックの戦略、コード生成の規約が記述され、既知のビジネスルールを記したより機能寄りのファイルも併せて置かれる。
  • これらのツールは生成計画 ── タスクの順序、各エージェントの担当範囲、拡張ポイント、生成される成果物 ── を明示するため、指揮する開発者は生成の「何を」「どこで」「どのように」を把握できる。
  • 計画には事前の時間的コストがかかるが、作業を複数のエージェントインスタンスに並列化できるようになり、記事によれば全体のサイクルタイムと予測可能性が向上する。
  • 開発は並行する制作の連続的な流れとなり、カンバン型のツールによってそれを可視化しつつ、仕掛かり作業と認知的な飽和を抑えることができる。エージェントは開発リソースであり、そのコスト、とりわけトークンのコストは、生み出される価値に照らして人間の開発者のコストと比較すべきだとしている。
  • 単独の指揮者はバス係数の点で脆弱である。記事は、徒弟制(compagnonnage)の精神で協働する拡張された開発者のペアを、安定した最小単位として提示している。
  • 記事は、ビジネスをよく理解したこうしたペアは、以前なら 5 人のチームが数か月かけて生み出していたものを 1 日で生み出せると主張しているが、これを裏づけるデータは示されていない。
  • ボトルネックはビジネス要件へと移る。ユーザーストーリーは十分に精査されていないことが多く、INVEST を満たすことはまれで、具体例で示されることもめったにない。一方でエージェントは、期待が明確で、文脈が与えられ、例で裏づけられているときに力を発揮する。ビジネス上の例を精査するのは依然として人間の仕事であり、Example Mapping のような実践がプロンプトの素材を提供する。
  • 記事は、低コストのオフショア開発に固執することを戦略的な誤りと呼び、AI はむしろビジネスをプロダクトを作るチームに近づけるべきだと論じる。
  • コードを生成するエージェントは、汎用言語の制御性、拡張性、保守性を備えたオーダーメイドのコードを提供するため、単純なプロトタイプを超える用途ではローコード/ノーコードの意義を大きく下げると論じている。
  • 生産の高速化には完全に自動化された CI/CD パイプラインが必要であり、そこに AI を組み込んでフローを観察し、弱いシグナルを分析し、インシデントを見極め、フィードバックを生み出すことで、デリバリーは Team Topologies で述べられている連続的な流れへと近づく。
  • ジュニア開発者が排除されるわけではないが、学習の道筋を作り直す必要がある。シニアとのペアプログラミング、生成されたコードを実際に手直しする経験、コードカタのような意図的な練習である。
  • 記事が鍵となる人材として挙げるのは、ビジネスへの深い理解を備えたシニア開発者であり、テックリードとプロダクトオーナーの交差点に位置する存在である。

背景

この記事は測定された結果の報告ではなく、著者の視点からの論考であり、生産性とコストに関する主張はデータなしに述べられている。記事は、プロダクトファーストという帰結を、Marty Cagan の Inspired が掲げる約束と、UX デザイナー、プロダクトマネージャー、技術者からなるプロダクトトリオの中に位置づけ、要件が制約となった時点で不可欠になる実践として Example Mapping、DDD、BDD を挙げている。

本 wiki 内の関連記事: AI 時代における開発チームの組織化 - Part II.2 と AI 時代における開発チームの組織化 - Part III。