🫠

Devinの導入と1ヶ月利用してみた考察

に公開

こんにちはpaizaの渡嘉敷です。

今年の3月に、エンジニア組織の生産性向上と、AIとの協業という技術トレンドを捉えるべく、Devinを試験的に導入しました。VPoEの立場から、この約1ヶ月間の試用を通して感じたDevinの可能性、そして現時点での課題、さらにはそれが私たちの開発組織にもたらすであろう変化について、率直な考えを共有したいと思います。

導入の背景と目的

Devinの導入は、単なる目新しさからではありません。エンジニア組織が抱える慢性的なリソース不足、複雑化する開発タスク、そして常に変化し続ける技術トレンドに対応していく必要性を強く感じていたことが背景にあります。AIがコード生成を支援することで、エンジニアはより創造的で難易度の高いタスクに集中できるようになり、結果として組織全体の生産性向上に繋がるのではないかと期待していました。また、AIとの協業は、今後のエンジニアリングにおいて避けて通れないトレンドであると認識しており、早期にその可能性を探ることも重要な目的の一つでした。

約1ヶ月間の試用を通して見えた可能性

実際にDevinを使ってみて、そのポテンシャルの一端を垣間見ることができました。特に、施策を細かく分解したプルリクのうち、1〜2割程度はDevinに任せられるという感触を得ています。比較的単純なロジックの実装においては、Devinが十分に戦力になり得ることを示唆しています。価格以上のリターンを現時点でも感じており、今後さらに活用が進むことで、その価値は高まっていくと確信しています。

また、時間が経つにつれてDevin自体が今後改善され、より複雑なタスクをこなせるようになることも期待しています。将来的には、エンジニアの仕事は、Devinが担当できない、より抽象度の高い設計や問題解決といった領域にシフトしていく可能性を感じています。

課題と痛み

Devinの導入は、期待ばかりではありませんでした。実際に運用していく中で、いくつかの課題と、それに伴う痛みも感じています。

期待したアウトプットを得るための指示コスト

Devinに意図した通りのコードを生成させるためには、詳細かつ明確な指示を与える必要があります。この指示を考えるためのコストが、導入前に想像していたよりも大きいと感じています。もちろん、これはDevinの特性を理解し、効果的な指示の出し方を習得していくことで、徐々に軽減していく可能性もあると考えています。

プルリクエスト増加によるレビューの負担

Devinの利用によりプルリクの数が増加し、レビュー担当者の負担が増大しています。いまのルールのままでは、レビューがボトルネックとなる未来が容易に想像できました。また、AIが生成したコードを完全に信用しきれないという心理的な障壁もあり、レビューの質を担保するために、より慎重な確認が必要となる場面もあります。

開発フロー全体への影響と変革の必要性

Devinの導入は、単にコード生成のプロセスに影響を与えるだけでなく、私たちの開発フロー全体を見直すきっかけとなりました。

レビュープロセスの見直し

増大するレビュー負荷に対応するため、レビューのルールを再考する必要があります。AIが書いたコードを、指示したエンジニアとGitHub Copilot Reviewを利用すれば複数回のレビューが行われたと捉えることができます。一方で、Devinに指示を出したエンジニアがそのままレビューを行う場合、第三者の視点が欠けるという懸念も残ります。新たな役割分担やフローを検討していく必要を感じています。

CI/CDパイプラインの再構築

細かなプルリクの増加は、CIの実行回数に直結し、それに伴うコスト増も無視できません。そのため、CIの実行時間を短縮するための抜本的な対策が必要です。また、デプロイの頻度も増加するため、デプロイ待ち時間を短縮し、リリースと切り戻しをより迅速かつ安全に行えるような仕組みを強化していく必要があります。

AIがコードを書きやすい環境整備

今後、Devinとの協業をよりスムーズに進めていくためには、AIがコードを生成しやすいような環境を整える必要があります。具体的には、型システムの導入やコーディング規約の厳密化、テストコードについてもテストケースの網羅性を高めたり仕様をより正確に反映させる工夫が考えられます。現在paizaではTDDは導入していませんが、AIとの連携をより円滑にするためには、TDDの導入も検討する必要があるかもしれません。

今後の展望

現時点での課題はあるものの、Devinがもたらす可能性と、価格以上のリターンを感じているため、今後も継続的に利用していきたいと考えています。

今回のDevinの試用は、私たちにとって学びの機会となりました。AIとの協業は、エンジニアの役割を再定義し、開発組織全体のあり方を変革する可能性を感じています。Devinの導入を契機として、私たちの開発プロセスをより効率的で、より質の高いものへと進化させていきたいと思います。

Devin以外のツールも含めて1年後に開発支援のAIがどうなっているかはわかりませんが、動向を注視しエンジニア組織の成長と生産性向上を目指していきたいと思います。

GitHubで編集を提案
paiza

Discussion