
はじめに
クオカード デジタルイノベーションラボ(以下ラボ)では、「エンジニアが本質的な業務に集中できる環境を作る」ことを目指し、自動化や効率化を推進するさまざまなツールの導入・運用に取り組んでいます。
関連記事
こうした取り組みの一環として、今回、AIエージェントの「Devin」を新たに導入しました。
本記事では、Devinの活用状況や、使ってみて感じた良い点・課題点、今後任せたいことなどをアンケート形式で聞いてみた結果をご紹介します。
Devinの導入を検討されている方や、ラボへの応募を検討中の方にとって、少しでも参考になれば幸いです。
- はじめに
- AIツール導入状況
- アンケート概要
- アンケート回答紹介
- 今後の展望
- 最後に
AIツール導入状況
現在ラボでは、以下のAIツールを導入・活用しています。
ChatGPT (※追記:2025/9で利用終了し、現在はGeminiに移行しています。)
関連記事
加えて今回、新たに「Devin」と「Cursor」の導入を検討し、まずは開発チームとインフラチーム、QAチームでDevinを導入することにしました。 (Cursorについては、一部メンバーで試験的に利用しながら検証中です)
アンケート概要
回答者:ラボ所属のエンジニア
質問内容:
- Devinの活用方法について教えてください
- 現時点でのDevinの良い点、得意だと感じるところを教えてください
- 現時点でのDevinの課題点、苦手だと感じるところを教えてください
- 今後Devinに任せてみたいと考えているものがあれば教えてください
アンケート回答紹介
Devinの活用方法について教えてください
ソフトウェアエンジニア
コード調査
- コード調査
- 特定のクラス、変数を参照しているところをリストアップさせる
- まだ1回しか使っていないですが、コードの実装ではなく確認の作業に使用しました。
実装・修正・リファクタリング
- Devinを使って実際に手を動かすタイプの作業。
- パイロット実装の作成
- ライブラリ削減(jQueryをバニラJSに置換)の修正
- Terraformで環境ごとに修正を加える場合に、1つの環境に対して修正を加えて他の環境にも同じ要領で修正を加える
- 要件が明確な実装の修正
- リファクタリング
- コメント、変数、クラス名、ファイル名、メソッド名などのtypoの修正
ドキュメント・資料作成
- コードをもとに説明用・共有用の資料を作成する用途。
- ソースコードをもとにした資料作成
インフラエンジニア
- TerraformのGitHub Actionsを追加してもらい、そのテストとバグを修正してもらいました。
- 手動作成されたリソースのTerraform化
- TerraformのPRを作成するとGitHub Actionsによってplan結果がコメントされる仕組みになっているので、importブロックを利用してDevinにimport以外差分のないPRを作成してもらいました
QAエンジニア
- APIテスト自動化
- 自動テストのコードレビュー
- 仕様の一次確認
現時点でのDevinの良い点、得意だと感じるところを教えてください
ソフトウェアエンジニア
生産性・スピード
- 人間よりも早い時間で網羅的な調査を行える
- 機能としては問題ないレベルのコード生成の速度は人をはるかに凌駕する
- 要件や指示が明確な場合、人力よりも早く実装できるところ
- 短時間で過去のコミットを遡ってコードを確認してくれるのはかなり便利な気がしました
パターン化された作業
- パターン的なコード生成
- ある程度実装方法が出回っている箇所の修正・実装
- リファクタリングは得意そう。CIまでちゃんと通してくれる
非緊急タスクの処理
- 他の作業の裏で、いつかやりたいけど優先度がそれほど高くない作業をやってくれるところ
対話性
- Slackを通してインタラクティブに必要なアウトプットにたどり着けること
インフラエンジニア
- ちょっとした機能追加であればPRの作成とテストまでしてくれる。同じスレッド(セッション)のやりとりで意図を汲んで修正してくれる
- 指示すると自律的に動いてくれるところが良く、正しいかどうか判断できる基準(例えば、import以外のterraform plan差分がない、など)が存在する変更が得意と感じました
QAエンジニア
- コードを解析してよしなに実装してくれる。バリデーションチェックなど単純なテストには有用そう
現時点でのDevinの課題点、苦手だと感じるところを教えてください
ソフトウェアエンジニア
コンテキスト理解力
- 曖昧な指示に対する的確な対処※(これは指示する方に問題あると思いますが)
- ドメイン知識が必要なものや、前提となるコンテキストが必要なものは、まだ苦手だと感じます。※ただし、前提となる情報をインプットすることで性能向上すると考えられる
- プロジェクトで独特な実装されている箇所の修正
- 既存のパターンを参考にしすぎるので、既存のコードパターンから外れた新しい創造
コード品質・読みやすさ
- 人が読むことを念頭においたわかりやすいコードの生成
操作性・UX
- Slackでのやり取りが一定のタイミングで区切られてしまい、もう少し同じスレッドで継続したいやり取りが中断されること
インフラエンジニア
- GitHub Actionsのバグを修正とテストがうまくできませんでした。(指示のしかたが抽象的すぎたのが悪かったのかもしれません)PRのChecksがパスするように直して欲しかったですが、PRの状態をうまく認識していなかったように思われます
- 複雑な作業や、指示が曖昧だと期待通りに動いてくれない印象がありました
QAエンジニア
- 複雑なテストケースは全て網羅できなそうなので足りないところは目で確認して補う必要がある(全まかせはできない)
今後Devinに任せてみたいと考えているものがあれば教えてください
ソフトウェアエンジニア
- ライブラリの削減作業やAWS SDKの実装等、ある程度実装方法が決まっている修正
- 未だパフォーマンス改善といった観点で活用したことがないので、やってみたい
- 得意なところを見極めて任せる範囲を広げていきたいです
- 可読性・保守性を上げるような全体的なリファクタリング
- 手作業で時間がかかりそうな作業は任せていきたいです
- 機械的な修正、テストコード作成、仕様調査など
- なんでも!
インフラエンジニア
- Terraformでの開発(DevinがTerraform planの結果を見て自身で直せるようなかたちで)を任せてみたいと考えています。
- AWSリソースの参照、PagerDutyなどの自動設定
- Terraformから構成図の作成(Devin wikiで指示しなくとも作成しているかもしれない?)
- Terraformコードの可読性向上、リファクタリング
QAエンジニア
- E2Eテスト実装
- コードをベースにしたテストケース洗い出し(期待動作はQAチームで確認してバグに気づかないということがないようにする)
アンケート結果から、Devinはパターン化されたコード生成やリファクタリングといった定型作業を大幅に効率化する一方で、文脈に依存するタスクや曖昧な指示には対応が難しい場面もあることがわかりました。
今後の展望
The End of Programming as We Know It でも述べられている通り、AIの進化により、エンジニアの仕事は従来の「コードを書く」ことから、AIと協働しながらソフトウェアを構築する時代へと移行しています。
こうした変化の中で、以前の記事「脱社内外注を進めています 」の中で「目指す姿」として言及している「エンジニアはシステムを作る存在ではなく、顧客(利用者)の課題を解決する存在」であることが、これまで以上に求められていると感じます。
単純なタスクはDevinのような自律的にタスクを遂行するツールを、複雑なコーディングはCursorのように開発者を支援してくれるツールを活用するなど、目的に応じてAIツールを柔軟に使い分けていくことが重要だと考えています。
今後もAIツールとの協働を通じて、より創造的かつ戦略的な役割に集中し、より良いサービスづくりにつなげていきたいと考えています。
最後に
ここまでお読みいただき、ありがとうございました!
ラボでは、新しい技術やツールを積極的に取り入れながら、チームで協力して課題解決に取り組める環境づくりを大切にしています。 そんな環境の中で、一緒にチームの成果を最大化してくれる仲間を募集中です!
少しでも興味を持っていただけた方は、ぜひカジュアル面談でお話しましょう。