Devinにコードレビューをさせ、コード品質と開発速度を同時に高める

株式会社グロービス / developer
テックリード / バックエンドエンジニア
利用プラン | 利用機能 | ツールの利用規模 | ツールの利用開始時期 | 事業形態 |
---|---|---|---|---|
Teamプラン | 実装 / コードレビュー | 11名〜50名 | 2025年1月 | B to B B to C |
利用プラン | Teamプラン |
---|---|
利用機能 | 実装 / コードレビュー |
ツールの利用規模 | 11名〜50名 |
ツールの利用開始時期 | 2025年1月 |
事業形態 | B to B B to C |
導入の背景・解決したかった問題
導入背景
ツール導入前の課題
- チームが細分化され、失敗パターンやベストプラクティスが横展開されにくい
- コードレビュー品質がレビュアーの経験値に依存し、ばらつきが発生していた
- ドキュメントは更新コストが高く、参照漏れも多い
- 目指していた設計パターンから逸脱した実装が増加
- レビュアーの負荷が高まり、本質的なレビューに集中しにくい
どのような状態を目指していたか
- 過去の失敗例やベストプラクティスが、PR を通じて即座にフィードバックされる状態
- ドメイン特有の運用ルールも含め、チームをまたいで一貫した判断基準が適用される仕組み
- ジュニア/シニアを問わず、一定以上のレビュー品質を自動で担保
- 人的レビューがより本質的な部分に集中している状態
- Wiki やドメイン知識の内容が AI に取り込まれ、レビューのたびに自動参照される
導入の成果
改善したかった課題はどれくらい解決されたか
当初課題に感じていた「チーム細分化による知見共有の難しさ」については、Devinの導入によって大きく改善されました。特に、AIがコードレビュー内で過去の失敗やベストプラクティスを自動的に指摘してくれるため、チーム間で同じ失敗を繰り返す頻度が目に見えて減りました。
また、「レビュー品質がレビュアーの経験に大きく依存する」という問題についても、完全に解決とまでは言えませんが、ある程度の改善が見られました。AIが一定の基準で指摘を行ってくれることで、レビュアーの経験差に伴うばらつきを抑える効果を感じています。
「ドキュメントが陳腐化しやすく、更新や参照が難しい」という課題についても、DevinのKnowledgeとして自動的に参照されるため、ドキュメントにかかる更新コストが軽減され、情報が実際の開発フローの中で自然と活用される仕組みになりました。
「目指しているRailsの設計パターンから逸脱した実装が増えてしまう」ことに関しても、導入後の日が浅く完全に解消とは言えませんが、AIが繰り返し設計思想をレビューで指摘することにより、少しずつ良い影響を感じ始めています。
どのような成果が得られたか
成果の詳細は、Zennでの記事 にて詳しく紹介していますが、AIレビュアーの導入により、全体的にコードレビューの早い段階で一定割合のバグや設計上の問題を事前に検知できるようになりました。これによって、人間による最終的なレビュー時の負担が軽減され、開発の効率化につながっています。
導入時の苦労・悩み
当初、AIエージェントに「実装タスク」と「コードレビュー」の両方を任せる可能性を検討しましたが、実装については生成されるコードの品質や挙動がやや不安定で、細かいやりとりや確認コストが想定よりも高くなっていました。
一方で、コードレビュー用途では当初から比較的安定して良い指摘が得られており、運用コストや心理的負担も軽減される実感がありました。そのため、私のチームでは用途を絞り込み、実装ではなくコードレビューに特化してAIを導入することを決めました。(実装タスクにも活用しているチームがありますが、今回はレビューでの活用例に特化した内容になります。)
導入に向けた社内への説明
上長・チームへの説明
元々、新しいAIツールを積極的に試していく文化がありました。そのため、Devinの導入にあたっては特に説得や説明に多くの労力を割くことはありませんでした。どちらかというと、「AIエージェントで具体的に何ができるのか」「現時点でどこまでの性能があるのか」ということを実際に触れて確かめること自体に価値がある、という理解で試しています。
その一方で、実際に試して終わりではなく、導入後の定量的・定性的な評価に力を入れました。後述の導入成果でもご紹介しますが、バグ検知率やレビュー時間の変化といった定量指標や、実際に活用しているエンジニアを設定し、それらを定期的にトラッキングしました。
活用方法
よく使う機能
主にレビューに活用しています。また、普段触らないリポジトリの全体像やドメイン知識を理解する際には、Wikiでの検索機能なども使っています。
また、GitHub Actions で pull_request
(opened / synchronize / edited)をトリガーにしたワークフローを用意し、Devin API を呼び出して PR に自動でコードレビューコメントを付与する運用にしています。リポジトリの Secrets に DEVIN_API_KEY
を設定しておけば、レビューは完全にノンストップで走るため、まず AI が一次チェックを済ませ、人間はその結果を踏まえて本質的な議論に集中できるようになりました。
ツールの良い点
- 特別な準備などをせずに、すぐに使い始めることができる
- Slack上で利用できるため、非エンジニアにとっても活用イメージがわかりやすい
- 自動でKnowledgeの追加・更新を提案してくれるため、手動で整備する負担が軽減される
- Knowledgeがチーム内・組織全体で共有されるため、継続的に組織の知識ベースを強化し、長期的に開発プロセスの品質と効率を改善できる
ツールの課題点
- Knowledgeやプロンプトの初期整備やチューニングに一定の人的工数が必要
- Knowledgeの参照タイミングが良くも悪くもDevin側で自動決定されるため、期待したタイミングで参照されないなど、不安定な挙動が発生することがある(読まれない場合や、他リポジトリに紐付けたKnowledgeが意図せず参照されてしまうことがある等)
- 利用するAIモデルをユーザー側で自由に選択できないため、Devinが利用するAIモデルの変更により、以前まで安定して機能していたワークフローが突然うまくいかなくなったり、精度が落ちたりすることがある
ツールを検討されている方へ
AI全般に当てはまりますが、Knowledgeや適切な文脈情報・プロンプトによって効果を発揮できるツールです。
組織特有の設計思想やドメイン知識などを丁寧に蓄積・チューニングする必要があるため、誰がKnowledgeを整備し、誰が指摘内容の品質を評価・改善するのかを明確に決めておくことが重要です。
特に初期段階では、シニアエンジニアなどドメインや設計思想に詳しいメンバーが主体的にチューニングや評価をすることをお勧めします。(また、AIツールの市場や個々のツールの機能は非常に速く変化するため、Devinを含め、導入を検討する際にはその時点での最新情報を随時調べ、状況をアップデートしながら判断する必要があります。実際、弊社でも導入当時から状況が大きく変化しており、DevinからRoo Code、そこからClaude Code…のように複数回ツールを置き換えています。)
今後の展望
技術の進歩が非常に速い分野であるため、特定のツールに固定せず、引き続き市場の新しい動きをウォッチし続けることが大切だと感じています。実際に、AIレビュアーについてはDevinからRoo Codeを経由し、現在はClaude Codeへと置き換えが終わっており、引き続きレビューの品質に加えてDORAメトリクスなどの健康指標も見つつ生産性を上げていきます。

株式会社グロービス / developer
テックリード / バックエンドエンジニア
よく見られているレビュー

株式会社グロービス / developer
テックリード / バックエンドエンジニア
レビューしているツール
目次
- 導入の背景・解決したかった問題
- 活用方法