AI導入で変わったのは実装速度ではなく、開発プロセスだった
はじめに
最近は、AIエージェントを開発に取り入れる事例をよく見かけるようになりました。
私たちのチームでも、比較的規模の大きいシステム刷新プロジェクトでAIエージェントを本格的に導入し、約2か月実際の開発で活用しています。
導入前に期待していたのは、
「AIを使えば大量のコードも短期間で移行できるのではないか」
ということでした。
実際にやってみると、コード生成のスピードは期待以上でした。一方で、AIを安定して活用するためのルール整備や、品質を担保するためのレビュー・修正には、予想以上の時間がかかりました。
振り返ってみると、一番大きな変化は実装速度ではありませんでした。AIと一緒に開発を進めるためのプロセスそのものが変わっていったことです。
この記事では、この約2か月で直面した課題や、エンジニアの仕事がどのように変わっていったのかを紹介します。
AIを「実装担当」として使う
今回のプロジェクトでは、AIをコード補完ツールとして使うのではなく、実装担当として活用することを意識しました。
実際の開発フローは次のような形です。
AIへ実装を依頼すると、既存実装をもとに仕様ドキュメントや実装計画を作成します。内容をレビュー・修正したあと、コードやテストコードを生成し、AIレビューも実行します。最後は人がコードレビューや動作確認を行い、必要に応じてAIへ修正を依頼する、という流れです。
以前は、人が実装し、人がレビューし、人が修正するのが当たり前でした。AIへ実装を任せることで、人とAIが役割分担しながら開発を進めるようになりました。
この時点ではまだあまり意識していませんでしたが、振り返ると、この頃から少しずつ開発の進め方が変わり始めていたのだと思います。
AIは期待どおりには動いてくれない
実際に使い始めて、一番ギャップがあったのがこの部分でした。AIは導入したその日から期待どおりの品質で実装してくれるわけではありません。
十分に実装を任せられる場面もありましたが、プロジェクトで求める品質や実装ルールまで理解した状態から始まるわけではなく、期待した精度で安定して動くようになるまでには、想像以上に時間がかかりました。
今回のプロジェクトでは、AIにプロジェクトの前提を理解してもらうため、AGENTS.md や SKILL.md と呼ばれる設定ファイルを整備していました。
そこには、プロジェクト概要や基本方針、AIエージェントの振る舞いに加え、実装手順やコーディングルールなどをまとめています。
最初から完璧なものを用意できたわけではありません。
レビューで見つかった問題や改善点をもとに、継続的に更新していきました。
例えば、プロジェクト固有のルールや実装手順を見直したり、メンバーが必要なスキル(SKILL.md)を随時追加したりしながら、AIがプロジェクトに沿ったコードを出力できるように整えていきました。
AIを育てていたというより、AIが期待どおりに実装できる土台を、チーム全体で作っていたという感覚の方が近かったように思います。
実装速度は確実に上がった
ルール整備が進み、AIをプロジェクトの実装担当として活用できるようになってからは、実装速度は確実に向上しました。
導入前は、1機能の実装だけでも2人日以上かかることが珍しくありませんでした。
AIエージェントを活用するようになってからは、仕様ドキュメントの作成から実装、テストコードの生成までを一連で進められるようになり、1日に複数の機能を実装できる場面も増えました。
特に印象的だったのは、自分が別の作業を進めている間にもAIが実装を進めてくれることです。
レビューや仕様確認、設計の検討をしながら、並行して複数の機能実装を進められるようになり、以前にはなかった開発の進め方が当たり前になっていました。
もちろん、これはAIだけの力ではありません。チームでルールを整備し、レビューを重ねながら改善を続けてきたからこそ実現できたものです。
レビューの重要性は変わらない
実装速度が上がっても、レビューの重要性は変わりませんでした。むしろ、以前よりも重要になったと思っています。
AIはコードを書いてくれますが、「本当に仕様を満たしているか」は別の話です。
実際には、次のような箇所で人によるレビューが欠かせませんでした。
- 特定の条件でだけ実行されるビジネスロジック
- ORMなどのライブラリが暗黙的に行う処理や、自動で補完される挙動
- NULLやデフォルト値、タイムゾーンなど、技術スタックによる挙動の違い
AIレビューも活用していましたが、こうした既存システムの仕様やライブラリ固有の挙動まではカバーしきれません。
そのため、AIがコードを書くようになっても、人が品質を判断する役割は変わりませんでした。
プロジェクト全体は見てくれない
もう一つ分かったのは、AIは機能単位では正しいコードを生成できますが、プロジェクト全体の保守性まで考慮した実装にするには、人のレビューが欠かせないということです。
レビューを進める中で、例えば次のようなケースがありました。
- 共通化できる処理が複数箇所に生成される
- 定数や共通処理の配置が統一されていない
- 他Usecaseを直接呼び出すなど、プロジェクトの設計ルールに沿わない実装になる
機能単位で見れば問題なく動いていても、プロジェクト全体で見ると改善したい箇所が少しずつ積み上がっていきます。
その場で修正すれば済むものの、同じような手戻りが何度も発生し、思った以上にレビューや修正へ時間を使っていました。
レビューを重ねる中で、「コードを直すだけでは足りない。AIが同じ間違いをしないようにすることも必要なのではないか」と感じるようになりました。
一番変わったのは、エンジニアの仕事だった
約2か月AIエージェントを使ってきて、一番変わったのは実装速度ではありません。エンジニアの仕事そのものでした。
以前は、一日中コードを書いて終わる日も珍しくありませんでした。今では、一行もコードを書かずに一日が終わる日があります。
その代わりに、
- 実装方針を考える
- AIへ実装を依頼する
- 生成されたコードをレビューする
- 開発ルールやプロセスを改善する
といったことに時間を使うようになりました。
コードを書く時間は減りましたが、「どう作るか」「どう品質を担保するか」を考える時間は、以前より増えました。
コードを書く人というよりも、AIを含めた開発プロセスを設計・改善することが、エンジニアの役割になってきたように感じています。
AI導入は、開発プロセスの改善だった
振り返ってみると、私たちがやっていたのは単にAIを使うことではありませんでした。
AIが生成したコードをレビューし、見つかった問題をルールへ反映し、またAIに実装してもらう。そのサイクルを繰り返すことが、開発の中心になっていました。
その場でコードを修正するだけでは、別の機能で同じ指摘が発生してしまいます。そこで、指摘内容をAGENTS.mdやSKILL.mdへ反映し、次回以降の指摘を減らしていきました。
レビューはゴールではなく、その結果をルールへ反映するところまでが、一つの開発サイクルでした。
AIを導入したというよりも、AIと一緒に開発するためのプロセスを改善し続けていたのだと思います。
それが、この2か月を振り返って一番強く感じたことでした。
おわりに
約2か月AIエージェントと開発を進めてきて、コードを書く時間は確かに減りました。
その一方で、設計やレビュー、開発ルールの改善など、人が考え続けるべき仕事はむしろ増えたように感じています。
今回の経験を通して強く感じたのは、AIは実装フェーズだけで活用するものではないということです。
設計方針やプロジェクトのルールを早い段階から整理し、AIが迷わず実装できる環境を整えておくことで、その後の開発効率や品質は大きく変わると感じています。
私たち自身もまだ試行錯誤の途中です。AIの性能はこれからも進化し、数か月後にはまた違う開発スタイルになっているかもしれません。今のやり方が最適解だとは思っていませんし、それに合わせて開発プロセスも変わっていくのだと思います。
それでも、この約2か月を振り返って今言えることがあります。
AIエージェントを導入したというより、AIと一緒に開発するための新しい開発プロセスを導入した。
この記事が、これからAIエージェントを開発へ取り入れようとしている方の参考になれば幸いです。