以下の内容はhttps://tech.findy.co.jp/entry/2025/06/02/070000より取得しました。


Devinと3ヶ月協働して個人のアウトプットを1.5倍にした実践3ステップ

こんにちは、ファインディでソフトウェアエンジニアをしているnipe0324です。

先日、AWSさんのCoding Agent at Loft #2 〜 AI コーディング活用事例 Night - 効果的な組織導入と実践〜 (第2回目)で登壇させていただき、登壇内容を記事として書き起こしました。

この記事では、Devinと協働して「個人のアウトプットを1.5倍にした実践3ステップ」をご紹介します。

Devinと協働して個人のアウトプットは1.5倍に増加

2025年5月末時点では、Copilot Coding Agent、Codex、Jules などのリリースが続々とされており、自律型のコーディングエージェントが盛り上がってきています。

Devinに特化せず他のコーディングエージェントでも使える内容になっていますので、自律型のコーディングエージェントの利活用に興味ある方はご一読くださいませ。

ちなみに、生成AI界隈は動きが早いので、数ヶ月後はどうなるかわかりません。また、現時点での業務で試した結果の1事例として参考にしてください。

はじめに

Microsoftさんの最近の研究では、組織がAIトランスフォーメーションをしていくためには、次の3つのフェーズがあるようです。

  • Phase 1 Human with assistant:AIがアシスタントする
  • Phase 2 Human-agent teams:エージェントがチームにジョインして、同僚として一緒に働く
  • Phase 3 Human-led, agent-operated:人間がディレクションをして、エージェントが業務を遂行する。必要があれば人がチェックする

AI Transformationの3段階(引用元: https://www.microsoft.com/en-us/worklab/work-trend-index/2025-the-year-the-frontier-firm-is-born

その中で、今回の話はこの「Phase2 エージェントと一緒に働く」をトライしている話になります。

Devinと協働してアウトプットを1.5倍にした3ステップ

ステップとしては次の3ステップで進めていきました。期間はDevinの導入から大体3ヶ月ぐらいかけて実施していきました。

  • ステップ1. Devinに「教える」
  • ステップ2. Devinに「慣れる」
  • ステップ3. Devinと「協働する」

個人的なポイントとしては、ステップ3までいくと、コーディングエージェントの良さを感じ、日々のアウトプットをスケールしていけるという実感をもてました。

ステップ1. Devinに教える

最初のステップは「Devinに教える」です。

Devinに小さなタスクを依頼しながら基本的な開発ルールを教えていくことで、Devinが軽微な修正をそつなくこなせるようになります。

1-1. 小さなタスクから始める

まずは、文言変更や軽微なタスクを依頼してDevinの動きを知ります。

実際にDevinが開発している画面をみながら、Devinの開発環境・作業手順・やりとり方法などを押さえることで今後のDevinとのやりとりの土台をつくれます。

DevinとやりとりするWeb画面

アンチパターンとして、エージェントへの期待値が高すぎることで、最初から「急ぎのタスク」や「大きめなタスク」を依頼し精度がでなく幻滅してしまうことがあります。

人と同じで小さなタスクから開発に慣れてもらうことが大切です。Devinはチームに入った新人だと思い、焦らずまずは文言変更やドキュメント修正など小さなタスクから依頼していくことをオススメします。

1-2. Devinに開発のルールを教えていく

開発のルールは、会社やプロジェクトごとに違います。そのため、Devinに小さなタスクをお願いしながら開発ルールを教えていきます。

DevinにはKnowledgeという機能があります。Devinとの会話からルールをほぼ自動的に学び、Knowledgeとして保存することで、次回以降のタスク精度が高まります。

以下は、実際にDevinが学んだ開発ルールのKnowledgeの一部です。

ブランチ作成、PR作成、コミット作成、テスト実行など基本的な開発ルールをKnowledgeとしてDevinに学んでもらいました。

実際に学んだ開発ルールのKnowledge(抜粋)

ステップ2. Devinに慣れる

次のステップとして、「Devinに慣れる」です。

Devinのドキュメントを読みながら、試行錯誤して依頼の勘所を掴みます。また、Knowledgeを洗練させ、AI Friendlyな環境を整えることで、Devinがよくあるタスクで90点以上のタスク精度を実現できるようになります。

2-1. Devinのドキュメントを読む

Devin の Documentationの Essential Guidelines は必読です。Devinにうまく依頼するための重要なプラクティスが記載されています。

例えば、次のような内容が記載されています。

Devinは「ジュニアエンジニア」として扱うのが最適です。明確で十分な指示があれば、インターンや新人エンジニアが対応可能なタスクを任せることができます。

ベストプラクティス:

  • 小さなタスクを並行して実行:朝の始まりに複数の小さなタスクをDevinに割り当て、昼食時にレビューを行うと効率的です。
  • Slackでの迅速な対応:Devinは30分程度で完了するタスクに適しており、長期間放置されがちなバックログの解消に役立ちます。
  • 明確な成功基準のあるタスクに集中:CIのパス確認や自動デプロイのテストなど、結果が明確に確認できるタスクが理想的です。
  • 小さく始める:Devinの性能は長時間のセッション(≒10 ACU以上)で低下する可能性があるため、小規模なタスクから始めることを推奨します。
引用元: https://docs.devin.ai/essential-guidelines/when-to-use-devin の英語を翻訳

2-2. 試行錯誤して勘所を掴む

Devinに様々なタスクを依頼しながら、依頼内容、依頼方法、タスク粒度の勘所を掴んでいきます。また、Devinのドキュメントを読んで学んだことを試しながら、より良い協働方法を模索していきます。

例えば、変数で指示をすることで汎用的なプロンプトを作成する、どの程度までの抽象的な指示ならタスクを遂行してもらえるか確認するなど試してみました。

そして、試行錯誤した結果、Linter対応や横展開系の対応、FeatureFlagの追加・削除、管理画面の軽微な改修、簡易なSentryのアラート対応などの定型作業は、ほぼ90点以上の精度でプルリクエストを作成できました。

Tipsとして、Devinの作成したプルリクエストの精度がいまいちなときは、Devinの設定画面で「Devinは承認を待たずに進める」のチェックをオフにするがおすすめです。複雑なタスクの場合、Devinの作業計画を承認してから作業を進めることができるので、作業計画段階で早めに方向性のすり合わせができ、「プルリクエストが出来上がった後のこれじゃない感」を大幅に減らせます。

「Devinは承認を待たずに進める」のチェックをオフにする

2-3. Knowledgeを洗練させる

Devinとの試行錯誤を通しながら、DevinのKnowledgeのバリエーションを増やしていきます。

例えば、テーブルを扱う変更やビジネスロジックの作成、APIの実装、ドキュメンテーションの追加など、さまざまなケースのKnowledgeが溜まっていきます。

これにより、より多くのタスクを精度よく任せられるようになります。

しかし、KnowledgeがあってもDevinがその内容通りに動かないこともあります。

そのような場合は、うまくいかなかったやりとりをもとに「今回のやりとりを次回以降で活かすためにKnowledgeを更新して」と伝え根気強くKnowledgeを更新します。

それでも駄目なら、初期の依頼プロンプトに内容を盛り込んだり、現状のLLMの限界として諦めています。

2-4. AI Friendlyな環境を整備する

単純にDevinに頑張ってもらうだけでなく、AIが開発をしやすいコードベースや開発環境を整備することも大事です。

個人的に、AI Friendlyな環境として以下3つは特に重要だと考えています。

  • 自動テスト、Linter、CIは必須:Devin自身でフィードバックループが回せなくなるので作業の精度が下がります。また、レビュアーのレビュー時のガードレールにもなるので必須です。
  • コードの統一や暗黙のルールを明文化:既存の実装を踏襲してもらうとDevinのタスク精度が高くなります。コードベース上で同じ目的のためにいろんな実装方式があるとDevinが迷ってしまうので、コードの統一感を高めています。また、暗黙知も明文化してKnowledgeとして教えます。
  • 場合によっては開発ルールを変更する:Devinに何度伝えてもうまく対応できないことがあったので、ルールを変更しました。具体的には、コミットメッセージの文字数のルールを守れなかったため、開発ルールとしての制限を緩めることで対応しました。

ステップ3. Devinと協働する

ここまででDevinへの依頼に慣れて、ある程度の難易度のタスクならほぼ満足できるようになってきます。

最後のステップでは、Devinに定型作業を任せたり、一緒にタスクを進めたりすることで、個人のアウトプットを増加させていきます。

3-1. Devinに定型作業を任せる

「これは9割以上の精度でDevinに任せられる」というタスクはDevinに任せていきます。定型作業のようなものは、ほぼ完璧にプルリクエストを仕上げてくれます。

最近では、個人のAIエージェントとの協働を通じてマインドも変化してきました。ある程度定型化されたタスクは「Devinに任せれば良さそう」いう考えになってきています。

例えば、軽微な修正やFeatureFlagの追加・削除、モデル作成、マイグレーションファイル作成、管理画面の簡易な対応などはDevinに任せて、その間に自分はDevinができない作業を進めることが多くなりました。

3-2. Devinと一緒にタスクを進める

Devinは、CursorやClineなどローカルマシンで実行するエージェントに比べて相対的に作業時間は長くなります。しかし、タスクを分担して連携して開発できれば、大きな問題にはならないと考えています。

私がよく実施する「Devinと一緒にタスクを進める方法」は主に2つです。

よくあるDevinと一緒にタスクを進める方法

  • パターン①:タスクを分解し、Devinがメインで開発を担当し、難しい部分やレビューを自分が行う
  • パターン②:横展開系のタスクで、最初の実装イメージは自分が作成し、その後の横展開はDevinに並列で実装を任せ、レビューを自分が行う

3-3. Devinにサブタスクを任せる

たまに、メインでないサブタスクを裏でDevinに丸っと依頼して作ってもらうことをします。

Devinの公開APIを利用した自前ワークフローツール(※Roo CodeのBoomerang Tasksの簡易版のようなもの)を作成し、一連の依存関係のあるタスクリストをワークフローツールで実行しています。

これにより、1〜2時間ほどで一通りの対応(5〜8プルリクエスト)をDevinに実装してもらうことが可能になりました。

タスクの定義例。依存関係にそってタスクを実行してくれる

課題としては、個々のタスク精度にはまだ伸びしろがあります。また、メインタスクとサブタスクを頻繁に切り替える必要もでてくるため、かなり疲れることもあります。

改善案として、レビューの一部をエージェント化したり、ワークフローのオーケストレーターやタスク出しをエージェント化したりすることで、より丸ごと任せられるか試してみたいと考えています。

おまけ: Devinの活用Tips

最後におまけとして、Devinの活用Tipsをいくつかご紹介します。

Tips1. GitHub/AWSアカウント管理のワークフローを自動化

SREチームでは、SlackワークフローとDevinを組み合わせてGitHubとAWSのアカウント管理をほぼ自動化しています。

SlackワークフローでDevinに依頼

流れとしては次のとおりです。

  1. 前提として、Terraformでアカウント管理をしている。
  2. Slackのワークフローで依頼をすると、@Devinメンションでワークフロー内容が記載される。
  3. Devinが反応してアカウント管理(追加・更新・削除)のプルリクエストを作る。
  4. SREがプルリクエストをレビューをする。修正がある場合プルリクエスト上でコメントをするとDevinが修正してくれる。
  5. SREがプルリクエストをマージすると、Terraformによりアカウントが追加・更新・削除される。

SREの方に効果を聞いたところ、月末月初などユーザー申請の対応が五月雨にあり地味に時間がかかっていた工数が感覚値で1日程度削減できたようです。

Devinには、Slackからタスクを依頼をできる機能があるので、Slackのワークフローとの接続がとても簡単にできるところはいいところだと思っています。

Tips2. 口調を変えるKnowledgeで親しみやすくする

DevinのKnowledgeで口調を指定することで、エンジニアがDevinに親しみを感じやすくしています。

Devinはデフォルトだと割とかしこまった感じの口調なのですが、Knowledgeを指定することで砕けた感じの会話ができるようになり、チームとDevinの親近感が醸成されました。(たぶん...)

Devinの口調を変えるKnowledgeとDevinとのやりとり

実用的な観点ではDevinが Knowledge をどのぐらい理解して作業をするかを日々検証できるというメリットもあると思っています。

Tips3. PMが仕様把握のためにDevin Searchを利用

Devinには、コーディングだけでなくDevin Searchという自然言語で質問をして回答を得られる機能があります。現在はβ板なので無料で利用できます。

Devin Searchで仕様を確認

実際にPMからメール送信の条件に対する質問をされ、Devin Searchで検索したら100点の回答が得られました。

そのため、PMにDevinのアカウントを発行して、詳細の仕様が気になる場合はDevinに聞いてもらうという取り組みをしました。

Tips4. AI駆動な仮実装

まだ試行錯誤段階ですが、Devinをフル活用して、仮実装を感覚値で2~3日想定が1日で完了しました。また、仮実装を通して設計やコードの解像度が高まり、「実現性の検証」や「改善点の発見」を短期間で実現できました。

仮実装の流れは次のように進めました。

  1. Devin Wikiで新しいリポジトリの主要機能や設計を把握
  2. Devin Searchで影響範囲を設計とコードレベルで把握
  3. Devin に大きめなタスクを渡して仮実装
  4. Cursorを使いながら仮実装の細部を修正して動くようにする

ある程度頭の中に設計イメージがあり、そのイメージをDevinに伝えて設計をしてもらい、仮実装を進めていくことで素早く検証を進めることができました。(※もちろん仮実装のコードは捨てて、本実装時に細部も含めてちゃんと作り込みます)

Devinに対する所感や協働して変わってきたこと

Devinとうまく協働することで、いままではチームのエンジニアが5~6名ぐらいだったのが、3名前後でも同程度のアウトプットをだせるようになっていきそうな感覚を受けています。

しかし、足元少しずつ顕在化しはじめているのですが、より少人数のチームでプルリクエストの数が増えているのでチームのレビュー負荷が高まっています。

具体的な解決策のアイデアはまだないですが、レビューのあり方をよりAI駆動によせていく必要があると思っています。

また、Devinと協働する中で個人の動きも少しずつ変わっています。

  • ミーティングが多くなってしまった日でも、Devinに実装をお願いすることで想定の進捗どおりに開発できた
  • 一部のプロダクトマネジメント業務やデータ分析など業務の幅が広がった

生成AIの進歩は早いですが、新しい技術に一喜一憂しながら、楽しんでいこうと思っています。

まとめ

今回の記事では、「Devinと3ヶ月協働して個人のアウトプットを1.5倍にした3ステップ」についてご紹介しました。

Devinと協働する3ステップは次のとおりです。

  • ステップ1. Devinに教える:小さなタスクからはじめ、開発ルールを教える。
  • ステップ2. Devinに慣れる:Devinのドキュメントを読みながら試行錯誤をする。また、Knowledge拡充やAI Friendlyな環境を整備する。
  • ステップ3. Devinと協働する:Devinに定型作業を任せる。Devinと一緒にタスクを進める。Devinにサブタスクを全て任せる。

今後は次のようなことにトライしていきたいと考えています。

  • 個人のアウトプット向上から、チームや組織のアウトプット増加につなげていきたい
  • Devinに任せられる範囲を増やし、AI駆動開発をより推進したい

また、セキュリティなどには気をつけつつも、DevinにとらわれずCopilot Coding Agent, Claude Code + GitHub Actionsなどいろいろと試しながら、より開発組織のスピードと品質を向上させていきたいと考えています。

ファインディでは生成AIやAIエージェントを試して開発生産性を高めることで、ユーザーにより価値を届けることを推進しています。

こうした新しい技術の利活用に興味がある方は、ぜひカジュアル面談にお越しくださいませ。

herp.careers




以上の内容はhttps://tech.findy.co.jp/entry/2025/06/02/070000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14