Devinを活用して開発組織の業務効率を上げるtipsまとめ
はじめに
こんにちは。個人事業主でEMやIT相談のお手伝いをしている河崎です。
最近AIエージェントのDevinが話題ですね!一方で活用事例がまだまだ少なく、導入判断に至らない、または導入はしているが試行錯誤している企業も多いかと思います。
今回は、日頃業務の中でトライアンドエラーを繰り返す中で見えてきた開発組織の業務効率を上げるDevinのtipsをお伝えします。
本記事のターゲット
- Devinを利用しており他社の活用方法を知りたいエンジニア
- Devin導入を検討している企業のエンジニアや担当者
Devinについて
Devinは、Cognition Labsが開発した自立型AIソフトウェアエンジニアです。
コードの作成、バグの修正、テストの実行など、ソフトウェア開発の様々なタスクを自律的にこなすことができます。
2025年4月時点のDevinの期待値
よくあるDevinを使った意見をまとめると「開発効率アップには繋がるけどジュニアエンジニアレベル」といった感じです。
公式でもDevinはジュニアエンジニアとして扱うようにと記載されています。
実際、使ってみても変更範囲が多くなるほど漏れが発生したり仕様と異なる内容が普通に出てきます。(結果レビューコストが増えるなんてことも…)
任せるタスクの種類にもよりますが、2~3回のやりとりで完結できるタスクは、感覚的にはせいぜい200行程度の変更まで。エンジニアが30分〜1時間かかるissueを5分でdraftを作ってくるイメージが現時点の妥当な期待値かと思います。
Devinの活用術
Devinを活用して開発効率を上げるには、意図通りのPRを最速でアウトプットさせることです。
そのためには以下2つを対応しておくと良いです。
- タスク完結に必要な情報を過不足なく与えること
- Devinの実行前に変更内容が妥当かのチェックをすること
Devin Knowledge
Knowledgeは開発におけるルールやinstructionをまとめたコレクションで、指示に応じて自律的に参照します。
Knowledge is a collection of tips, advice, and instructions that Devin can reference in all sessions. You can continually add to Devin’s bank of Knowledge over time, and Devin will automatically recall relevant Knowledge as necessary.
https://docs.devin.ai/product-guides/knowledge
Devinの管理画面よりKnowledge機能を設定することができます。
現時点では必要になった際に随時追加している状況ですが、Knowledgeに情報をどんどん積む方針でおり、今は以下の情報が載せられています。
- PRを作成するまでの一般的な作業ルール
- NotionやSentryのAPIアクセス情報
- 動作確認方法
Knowledge①:PRを作成するまでの一般的な作業ルール
開発のworkflowにあたるものをDevinに定義して記載します。
Devinにお願いするissueは、
- (粒度によりますが)開発を実施する前に実行計画を立てる→レビューしてOKなら実施というフローをするため、指示を出すまではPRを作成しないこと
- PR OpenするとCIが自動実行されることもありテストが頻繁に落ちるとnoisyなので、必ずdraft PRを作成すること
あたりを意識しています。
## Githubでの作業について
### ブランチ運用
- 開発用ブランチはdevelopを使用し、masterは使用しない
- feature branchはdevelopから作成する
- ブランチ名は `devin/#<issue番号>` の形式で作成する
- 例: `devin/#1234`
- PRを分割する場合は `devin/#1234-1`, `devin/#1234-2` のように番号を付与
- PRの分割が望ましい場合は、分割案と理由を人間に提案し承認を得ること
### PRの作成
- 必ず Draft PRとして作成し、レビュー後に指示があった場合のみOpenに変更
- PRのdescriptionには対応issueを明記
- 形式: `Fix #<issue番号>`
- 複数issue対応の場合: `Fix #1234 #1235`
- commit messageにはissue番号の記載は不要
## タスク対応時の基本動作
- issueの対応指示があるまではコード修正を実施しない
- issue作成依頼を受けた場合は以下の情報を含めて作成する
- 想定される修正範囲
- 工数見積もり
- 影響範囲
- 懸念点
Knowledge②:NotionやSentryのAPIアクセス情報
2025年4月時点では、まだ公式でNotionやSentryの情報を渡す手段がないですが、APIキーをKnowledgeに読み込ませることでアクセスを可能にします。詳細は以下の記事を参考にしています。
Notionの他にSentryもAPIキーを渡すことで、エラーの検知から修正実装までの多くをDevinに任せることが可能です。
今だとエラー調査は以下のフローで実施しています。
- Slackにエラー通知が届く
- エラー原因を一次調査する(Devinに聞くこともある)
- Devinにissueを立ててもらう
- そのままDevinに修正実装してもらう
ただ現時点で連携については公式サポートがされていないこともあり、正直挙動はやや不安定です。
このあたりは、AIの進化速度を考えるとやりたいことをベースに業務設計しておきAIやツールの進化に期待する方針とするのが関わり方として良さそうに思います。
Knowledge③:ローカルでの動作確認方法(検証中)
こちらもまだ検証中ですが、Devin上でローカルサーバーを立ち上げて動作確認を自動で動かす取り組みをしています。
内容は単純にローカルサーバーを立ち上げるように指示をするだけです。
管理画面の動作確認には以下を実行します。
npm run dev -p 5050
こちらのコマンドを実行した上で以下を通して動作に問題がないことを確認してください。
- 指定した画面にアクセス
- 操作を実行
- 指定した動作の確認を実施
これによって特定の操作を指定することで、修正完了を行ってから動作確認までを指示して完結させるよう試みています。
Devinで開発時に依頼すること
Devinを活用するにあたって開発の生産性を上げるためには、意図しない方向にDevinを暴走させないようにするよう制御することです。そのためにはタスクの実行前に実行計画を立てると認識ズレが少なくなります。
CursorでもAgentモードでタスクをこなす場合には、実施する前にいくつか質問をさせて方向性が一致しているか確認させるようにしていますが、同じイメージです。
@Devin
このissue対応をお願いできますでしょうか?
まずはPRを作成せず、どのファイルにどんな変更を加えるか修正内容の実行計画を立ててください。
変更ファイルと変更内容のまとめをissueに追記してください。
これによってどのような変更を加える必要があるのかを提案してくれます。
(たまに英語で返答されたりします)
提案してきた内容の内部設計レビューを実施するイメージで、方針が問題ないかチェックします。
issueによっては、そのまま一発で実装までお願いすることもありますが、このあたりはまさにジュニアエンジニアという感じですね。
エンジニアの生産性をアップさせるためにしている工夫
個人的な意見ですが、エンジニア業務をする上で仕様に関する質問回答やエラー調査などは、少ないほど嬉しいタスクであると思っています。
差し込みで実施する必要がありますし、そうなると元々持っている自分のタスクのスケジュールも見直す必要があるし、1つ1つはそこまで大したことがなくても積み上がるとそれなりの認知・対応コストです。Devinを使えば、「タスクにならないタスク」を半自動化できます。
Devin Search
Devin Searchは、実際のコードを元に質問に対して素早く回答を生成してくれます。
エンジニアが不具合や仕様調査をする際に、現状のコードを調査 → 仕様把握 → 回答 という手順を踏むことが一般的かと思いますが、これを全てDevinに任せることが可能です。
エンジニアから見ると抽象的と感じる質問でも意外と間違いのない回答を生成してくれるので、今ではカスタマーサポート、営業、デザイナーにも活用してもらいエンジニアへの質問数が体感で1/2くらいには減っています。
おまけ:issueの作成
Devinの活用としてSlackをインターフェースとしてGitHubの操作を行えるAI Agentという見方ができます。
issueを起こす際にはSlackで始まることが多く、仕様相談もSlackでやりとりをするシーンがあります。Devinを使えば要件や仕様について、Slack上で話した後に「この内容をまとめてissueに記載しておいて」「ここで話した要望を起票しておいて」と記載するだけで、きちんと解決したい課題や対応内容をまとめたissueを起票してくれます。
将来的にはDevinを通してNotionの仕様ページを更新したり、AWSと連携させてログ調査まで行わせるなんてこともできるかもしれません。
おわりに
今回は、現時点で実際にしているDevinの活用方法についてまとめてみました。AI Agentは便利ですが、期待値を高めすぎることなく現実的に業務効率を上げる方法を触りながら検討していく必要があります。
今後、さらにモデル性能の向上や外部サービスとの連携を通して、ますますシームレスに開発のアウトプットを出し続けてくれるようになると予想しており、おそらく3ヶ月後にはまた全く違うプラクティスが出ているのではないかと思います。
この記事の他に、Devinを通してよりよい活用方法がある、Devinの他にこういうサービスも便利などあれば、この記事にコメントやシェアいただけると嬉しいです。
また現在お世話になっているAnyReachでは全職種積極採用中ですので、AIを業務の中で積極活用したい人はエンジニア、ビジネス問わずご連絡いただければと思います。
Discussion