Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CodeRabbitと過ごした1ヶ月 ─ AIコードレビュー導入で実感したチーム開発の進化
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
mitohato14
April 30, 2025
Technology
4k
4
Share
CodeRabbitと過ごした1ヶ月 ─ AIコードレビュー導入で実感したチーム開発の進化
mitohato14
April 30, 2025
More Decks by mitohato14
See All by mitohato14
Androidアプリ開発にもCursorという選択肢を
mitohato14
0
570
兎に角、コードレビュー
mitohato14
2
410
アプリの復旧を早くしたい!
mitohato14
1
140
事業開発とコミュニティ活動
mitohato14
0
68
プレビューファーストUI開発
mitohato14
1
500
新米テックリードの試行錯誤.pdf
mitohato14
1
560
JetpackCompose Slot APIs
mitohato14
0
1.1k
Start Jetpack Compose.pdf
mitohato14
0
420
Other Decks in Technology
See All in Technology
チームで実践する AI-DLC 思考の軌跡を残すチェックポイント設計
belongadmin
0
2.1k
JEP 522 Deep Dive - G1 GC同期コスト削減によるスループット向上を徹底検証&解説
tabatad
1
690
速さだけじゃない! VoidZero ツールが移行先に選ばれる理由
mizdra
PRO
6
730
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
2
820
地元にいないローカルオーガナイザーの立ち回り
uvb_76
1
450
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
220
美味しいスイスチーズを作ろう🧀🐭
taigamikami
1
230
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development
yoshidashingo
1
330
AIガバナンス実践 - 生成AIコネクタのデータ漏洩リスクと実務対策
knishioka
0
170
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
180
オンコールの負荷軽減のためのBits Assistant 活用方法 / How to Use Bits Assistant to Reduce the Workload on On-Call Staff
sms_tech
1
380
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
160
Featured
See All Featured
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
520
Design in an AI World
tapps
1
220
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
380
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.3k
Ruling the World: When Life Gets Gamed
codingconduct
0
240
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
The agentic SEO stack - context over prompts
schlessera
0
790
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
Unsuck your backbone
ammeep
672
58k
Building the Perfect Custom Keyboard
takai
2
780
How to Ace a Technical Interview
jacobian
281
24k
Transcript
© DMM © DMM CONFIDENTIAL CodeRabbitと過ごした 1ヶ月 AIコードレビュー導入で実感したチーム開発の進化 Sansan×DMM.com Android
Tech Talk mitohato14 2025/04/30
© DMM 自己紹介 名前 mitohato14(Miyazato Hayato) 最近の趣味 Monster Hunter Wilds ゲーム配信を見る
櫻坂46 最近の業務 チームの課題解決 AI促進 2
© DMM 今日話すこと • DMMポイントクラブアプリにAIコードレビューを導入した話 • CodeRabbitの設定 • CodeRabbitを導入しての所感 3
© DMM サービスの紹介
サービス LP:https://lp.pointclub.dmm.com/ DMMポイントをお 得に貯めて 賢く管理 ! カジュアルゲームで 効率的に ポイントを稼げる !
FEATURE FEATURE DMMの お得な情報が 届く! FEATURE 3 サービスコンセプト
会員数 MAU 機能 DAU で手に入れよう モバイルアプリ版 6 万 カジュアル ゲーム
ポイント 管理 万 (会員IDベース(Web含む)) 10〜 13 万 5〜 6 通知 送客 広告 59 ※2025年02月25日時点
© DMM CodeRabbitを導入した話
© DMM 導入前の話
© DMM コードレビュー体制 開発メンバー:3人 レビューしたメンバー全員のApproveでマージ(1人以上) 朝と夕に口頭レビュータイム(各30分) PRテンプレのチェックリスト 9
© DMM PRテンプレ 10
© DMM PRテンプレ 11
© DMM PRテンプレ 12
© DMM チェックリスト多め
© DMM コードレビュー 細かい指摘が多くなりがち テストのシナリオケースとテストコードにズレ 細かい部分を見落としがち レビュー時間が大きく取られる 14
© DMM コードレビュー 細かい指摘が多くなりがち テストのシナリオケースとテストコードにズレ 細かい部分を見落としがち レビュー時間が大きく取られる レビュー品質がレビュアーに大きく依存 15
© DMM コードレビュー 1. Pull Request作成 2. Pull Requestについて説明 3.
少ない時間でレビュー 4. ミーティング 5. 落ち着いた頃にレビュー 6. 細かい指摘点 7. 再レビュー 8. … 9. マージ 16
© DMM マージまでに時間がかかる 😇
© DMM 細かい指摘 何度も細かいことを指摘するのは双方に負担大 18
© DMM 細かい指摘 何度も細かいことを指摘するのは双方に負担大 • レビュアー • 重箱の隅をつつくような指摘ばかりになってしまう • 細かい部分が気になって大枠で見れない
• 時間が取られてしまう 19
© DMM 細かい指摘 何度も細かいことを指摘するのは双方に負担大 • レビュアー • 重箱の隅をつつくような指摘ばかりになってしまう • 細かい部分が気になって大枠で見れない
• 時間が取られてしまう • レビュイー • 見落としが多い • 細かいところで時間取らせてしまい申し訳ない • マージまでに時間がかかる 20
© DMM AIコードレビューの波
© DMM PR-Agent qodo-aiによるAIコードレビューツール(OSS) 22
© DMM PR-Agent qodo-aiによるAIコードレビューツール(OSS) 兼務プロダクトで導入していたがスルーされがちに →指摘内容がAndroidっぽくなかった 23
© DMM PR-Agent qodo-aiによるAIコードレビューツール(OSS) 兼務プロダクトで導入していたがスルーされがちに →指摘内容がAndroidっぽくなかった コストとPR要約は良いが上手く使えなかった トライアルという印象が強かった 24
© DMM CodeRabbit導入の流れ
© DMM CodeRabbit導入の流れ CodeRabbitを試すチームが出てくる 環境整備されたことが全社アナウンスされる CodeRabbitを試してみようという気持ち 26
© DMM CodeRabbitとは
© DMM CodeRabbit AIを活用したコードレビュー支援ツール • PR概要生成 • コードレビュー • 改善提案
• シーケンス図の生成 • 類似リポジトリの列挙 • チャット機能 • 過去のやりとりも反映 • リポジトリ全体を考慮したレビュー 28
© DMM 導入していく
© DMM 導入 CodeRabbitにGitHubアカウントでログイン ダッシュボードから有効化するリポジトリを選択
© DMM 導入 CodeRabbitにGitHubアカウントでログイン ダッシュボードから有効化するリポジトリを選択 すぐに使える yamlファイルを追加することでより良いレビューに
© DMM yamlファイル .coderabbit.yamlに記述 公式サイトを参考に設定を記述(構文チェックもできる) https://docs.coderabbit.ai/getting-started/configure-coderabbit/ 特にreviews/path_instructionsを育てていく
© DMM yamlファイル .coderabbit.yamlに記述 公式サイトを参考に設定を記述(構文チェックもできる) https://docs.coderabbit.ai/getting-started/configure-coderabbit/ 特にreviews/path_instructionsを育てていく
© DMM yamlファイル .coderabbit.yamlに記述 公式サイトを参考に設定を記述(構文チェックもできる) https://docs.coderabbit.ai/getting-started/configure-coderabbit/ 特にreviews/path_instructionsを育てていく
© DMM 実際の設定
© DMM
© DMM
© DMM 導入結果
© DMM PR内容の要約例
© DMM
© DMM
© DMM
© DMM
© DMM 指摘内容例
© DMM
© DMM
© DMM 多かった指摘 ドキュメント用にコメントを書いてください →なるべく命名のみで伝わるようにしているので不要 Resultをレスポンスとしてください →例外をそのままスローしてViewModelでキャッチする方針なので不要
© DMM 導入1ヶ月の所感
© DMM 嬉しかったこと
© DMM 嬉しかったこと • 変更内容の要約 • どのようなファイルにどんな変更が入ったかわかりやすい • 実装ミスに気づきやすい •
シーケンス図の生成 • レビュアーのコード理解促進 • チャット形式でCodeRabbitとやりとりできる • 指摘について質問したりプロダクト事情を伝えたり • レビューが早い • メンバーに見てもらう前に簡単な内容を修正できる • ポエム • ふふっと柔らかい気持ちになる
© DMM CodeRabbitとのやりとり プロダクトの背景や議論をログとして残せる 人力レビュー前に細かい問題点は解消できる Request Changes/Approveしてくれる
© DMM レビュー内容の変化 細かい指摘をすることが減った →CodeRabbitがほとんどやってくれる →広い視点での実装改善レビューが多くなる AIの指摘内容から議論が発生 →気づきを得られる →新しい議論のきっかけに
© DMM 数値で見る変化
© DMM 作成からマージまでの時間 指標 時間( h) 備考 平均 約51.6時間 約2.15日
中央値 約24.2時間 約1.01日 最大 約596.7時間 約24.9日 最小 約0.44時間 約26分 指標 時間( h) 備考 平均 約67.6時間 約2.82日 中央値 約14.4時間 約0.60日 最大 約615.9時間 約25.66日 最小 約0.04時間 約2.6分(0.002日) 導入前 導入後
© DMM 作成から初レビューまでの時間 指標 時間( h) 備考 平均 約0.0023時間 約8秒
中央値 約0.0022時間 約8秒 最大 約0.0089時間 約32秒 最小 約0.0014時間 約5秒 指標 時間( h) 備考 平均 約205.7時間 約8.6日 中央値 約17.1時間 約17時間7分 最大 約502.9時間 約20.9日 最小 約0.45時間 約27分 導入前 導入後 ※CIでのLintコメントは除く
© DMM メンバーの声
© DMM メンバーの声 良いところ • 細かいレベルで精度の高いレビューを素早くしてくれる • 修正点が明確 • 問題指摘だけでなく、どう直せば良いかわかりやすい
• 気づけていなかった問題点を指摘してくれる • バグを事前に防げる
© DMM メンバーの声 気になること • プッシュのたびに実行され、指摘内容の重複がある • 設定変更検討の余地 • 提案をそのまま受け入れるとエラーになる
• suggest形式をそのまま受け入れない • 返信で後続対応しますといっても同じ指摘してくれる • TODOコメント書けば良い
© DMM Kotlin/Android特有の指摘内容はあったか?
© DMM Kotlin/Android特有の指摘 • paddingの書き方指摘 • 複数のpadding設定→1つのpadding • 好みもあるがきちんとComposeを理解している •
テストコードで非同期処理はrunTestを推奨 • AndroidViewのfactoryとupdateの挙動の違い • ダークモード対応の色指定をUpdateに
© DMM AndroidViewのfactoryとupdateの挙動の違い
© DMM 課題は解決した?
© DMM 元々の課題 細かい指摘が多くなりがち テストのシナリオケースとテストコードにズレ 細かい部分を見落としがち レビュー時間が大きく取られる レビュー品質がレビュアーに大きく依存 63
© DMM 課題への結果 細かい指摘が多くなりがち → CodeRabbitが実施 テストのシナリオケースとテストコードにズレ → CodeRabbitが検知 細かい部分を見落としがち
→ 違和感をCodeRabbitが検知 レビュー時間が大きく取られる → 一部解決、ロジックや仕様などより重要な部分に時間をかけられる レビュー品質がレビュアーに大きく依存 → 一定のクオリティは担保(要ブラッシュアップ) 64
© DMM 完璧?
© DMM 改善点 内容が誤っている時がある pushのたびに発火は指摘が多く感じる 人力レビュー中にコード更新が入りやすい →CodeRabbitからの指摘点解消のため 細かい指摘が多すぎるかも?
© DMM 今後の話
© DMM 今後 チューニングを引き続き実施 レビュー観点やレビュータイミング 運用ルールの整備 AIコードレビューと人力コードレビューが被らないように AIコードレビュー以外にもAIの活用目指す(AX戦略)
© DMM AX戦略
© DMM https://developersblog.dmm.com/entry/2025/04/18/110000 人でやっていた業務の50%をAIに置き換えた(協働)うえで、開発 リードタイムへの変化を観測する
© DMM さいごに Androidアプリ開発にもAIコードレビューを! CodeRabbitによるコードレビューで生産性が向上 気軽に導入でき、チームやプロダクトに応じた設定が可能 爆速レビューは人・チームを救う 71