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
兎に角、コードレビュー
Search
mitohato14
August 19, 2025
Programming
1
250
兎に角、コードレビュー
mitohato14
August 19, 2025
Tweet
Share
More Decks by mitohato14
See All by mitohato14
CodeRabbitと過ごした1ヶ月 ─ AIコードレビュー導入で実感したチーム開発の進化
mitohato14
4
2k
アプリの復旧を早くしたい!
mitohato14
1
110
事業開発とコミュニティ活動
mitohato14
0
51
プレビューファーストUI開発
mitohato14
1
470
新米テックリードの試行錯誤.pdf
mitohato14
1
510
JetpackCompose Slot APIs
mitohato14
0
920
Start Jetpack Compose.pdf
mitohato14
0
380
Other Decks in Programming
See All in Programming
CSC509 Lecture 06
javiergs
PRO
0
260
Flutterで分数(Fraction)を表示する方法
koukimiura
0
140
SwiftDataを使って10万件のデータを読み書きする
akidon0000
0
240
Writing Better Go: Lessons from 10 Code Reviews
konradreiche
3
5.8k
Google Opalで使える37のライブラリ
mickey_kubo
3
130
Pythonに漸進的に型をつける
nealle
1
110
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
260
コードとあなたと私の距離 / The Distance Between Code, You, and I
hiro_y
0
190
CSC305 Lecture 09
javiergs
PRO
0
300
Webサーバーサイド言語としてのRustについて
kouyuume
1
4.2k
Catch Up: Go Style Guide Update
andpad
0
240
理論と実務のギャップを超える
eycjur
0
170
Featured
See All Featured
BBQ
matthewcrist
89
9.8k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Automating Front-end Workflow
addyosmani
1371
200k
Statistics for Hackers
jakevdp
799
220k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
GitHub's CSS Performance
jonrohan
1032
470k
Rails Girls Zürich Keynote
gr2m
95
14k
The Cult of Friendly URLs
andyhume
79
6.6k
Speed Design
sergeychernyshev
32
1.2k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Facilitating Awesome Meetings
lara
57
6.6k
Transcript
© DMM © DMM CONFIDENTIAL 兎に角、コードレビュー AIコードレビュー実践事例 3選 mitohato14 2025/08/20
© DMM 自己紹介 名前 mitohato14(Miyazato Hayato) 所属 合同会社DMM.com 主な業務 DMMポイントクラブ Android 社内向けSDK
登壇・執筆サポート 2
© DMM 今日話すこと 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人 1Approve以上でマージ 朝と夕に口頭レビュータイム(30分) 9
© DMM コードレビュー 細かい指摘が多くなりがち 細かい部分を見落としがち テストのシナリオケースとテストコードにズレ レビュー時間が大きく取られる レビュー品質がレビュアーに大きく依存 10
© DMM AIコードレビューの波
© DMM AIコードレビューの波 他チームでPR-AgentのAIコードレビュー導入事例があった 新しいSDK開発開始のタイミングで試験的運用 12
© DMM PR-Agent qodo-aiによるAIコードレビューツール https://github.com/qodo-ai/pr-agent OpenAIのAPIキーをGitHub Actions経由で利用 従量課金 13
© DMM 結果
© DMM PR-Agent導入結果 うまく使いこなせず背景化 指摘がAndroidのデファクトスタンダードっぽくなかった 見ることが減っていった 運用方法をきちんと定めずにとりあえず導入してみた感が強かった 15
© DMM 時は少し流れ
© DMM AI活用の流れ 部署全体的なAI活用促進 「人でやっていた業務の50%をAIに置き換えた(協働)うえで、開発リードタイ ムへの変化を観測する」 https://developersblog.dmm.com/entry/2025/04/18/110000 17
© DMM 18
© DMM AI活用の流れ コード生成だけでなく、要件定義やユーザー分析など ほぼすべての業務にAIを コードレビューももちろん対象 19
© DMM レビュー課題点整理
© DMM 目指したい状態 • 細かい問題は事前に検出され、レビュー前に解決されている • コードを人が見るだけでは気づきにくい不具合を早期に検出できる • 属人性を排除し、安定したコード品質を担保できる体制の構築 21
© DMM 目指したい状態 • 細かい問題は事前に検出され、レビュー前に解決されている • コードを人が見るだけでは気づきにくい不具合を早期に検出できる • 属人性を排除し、安定したコード品質を担保できる体制の構築 本格的なAIコードレビューの導入検討
22
© DMM 利用ツールの選定 社内で利用実績のあるツールを比較 • PR-Agent • CodeRabbit • GitHub
Copilot code review 23
© DMM PR-Agent 過去に利用経験あり 従量課金制でコストをかなり抑えられる 期待しているようなレビュー内容を得られなかった 24
© DMM CodeRabbit 定額課金制で、実行コストを意識しなくて良い 以下が魅力的に感じた • レビュー内容のカスタマイズ性 • シーケンス図による変更内容視覚化 •
チャット形式でのやり取りが可能で、学習もしていく • リポジトリ全体のコードを踏まえた上でのレビュー 25
© DMM GitHub Copilot code review GitHub Copilot有効化で利用可能 検討時はまだパブリックプレビュー 対応している言語が限られていて、Kotlinは対象外だった
26
© DMM CodeRabbitを導入してみることに
© DMM CodeRabbitとは
© DMM CodeRabbit AIを活用したコードレビュー支援ツール https://www.coderabbit.ai/ja • PR概要生成 • コードレビュー •
改善提案 • シーケンス図の生成 • 類似リポジトリの列挙 • チャット機能 • やり取りの学習もする • リポジトリ全体を考慮したレビュー 29
© DMM 導入していく
© DMM 導入 CodeRabbitにGitHubアカウントでログイン ダッシュボードから有効化するリポジトリを選択 すぐに使える(無料枠も!) yamlファイルを追加することでより良いレビューに 31
© DMM yamlファイル .coderabbit.yamlに記述 公式サイトを参考に設定を記述(構文チェックもできる) https://docs.coderabbit.ai/getting-started/configure-coderabbit/ レビュー用プロンプトを育てていく AIも活用しつつ、設定する 32
© DMM
© DMM
© DMM 実際の設定
© DMM
© DMM セットアップ 細かい部分まで指摘するように GitHubのrequest changesで 見落とさないように 37
© DMM プロンプトを別ファイル化し、他AIと共有 ファイルパスごとの構造化したレビュー観点 プロダクト固有の知識や コーディングルールを 別ファイル化 (他AIツールと共有) 38
© DMM
© DMM 運用方法 CodeRabbitからのレビュー対応が完了してからOpen CodeRabbitのレビューにはコメントやリアクションを残す 追加でレビューして欲しい時は「@coderabbitai full review」 40
© DMM 運用方法 CodeRabbitからのレビュー対応が完了してからOpen →ある程度問題解消してからレビューできるように CodeRabbitのレビューにはコメントやリアクションを残す →確認漏れなのか対応不要なのかわかるように 追加でレビューして欲しい時は「@coderabbitai full review」
→プッシュごとのレビューが煩わしく感じないように 41
© DMM 導入結果
© DMM PR内容の要約例
© DMM 44
© DMM 45
© DMM 46
© DMM 47
© DMM 指摘内容例
© DMM 49
© DMM 50
© DMM Kotlin/Android固有の指摘も 51
© DMM 嬉しかったこと
© DMM 嬉しかったこと • 変更内容の要約 • どのようなファイルにどんな変更が入ったかわかりやすい • 実装ミスに気づきやすい •
シーケンス図の生成 • レビュアーのコード理解促進 • チャット形式でCodeRabbitとやりとりできる • 指摘について質問したりプロダクト事情を伝えたり • レビューが早い • メンバーに見てもらう前に簡単な内容を修正できる • ポエム • ふふっと柔らかい気持ちになる 53
© DMM CodeRabbitとのやりとり プロダクトの背景や議論をログとして残せる Request Changes/Approveしてくれる 54
© DMM メンバーの声
© DMM メンバーの声 良いところ • 細かいレベルで精度の高いレビューを素早くしてくれる • 修正点が明確 • 問題指摘だけでなく、どう直せば良いかわかりやすい
• 気づけていなかった問題点を指摘してくれる • バグを事前に防げる 56
© DMM メンバーの声 気になること • 提案をそのまま受け入れるとエラーになる • suggest形式をそのまま受け入れない • 返信で後続対応しますといっても同じ指摘してくれる
• TODOコメント書けば良い 57
© DMM 良さそう🎉
© DMM 感じたAIコードレビューの効果
© DMM AIコードレビューの効果 導入当初はコードレビュー作業全体にかかる時間削減を期待 結果として • レビューする時間は減った • 指摘対応する時間は増えた •
マージまでの時間は増えている • コード・プロダクト品質の向上を感じる 60
© DMM AIコードレビューの効果 • レビューする時間は減った • 見る前にある程度問題が解消されている状態 • PR要約で理解促進 •
指摘対応する時間は増えた • レビュー開始までに指摘が多く、対応に時間が取られる • 直したらまた新しい指摘がある • マージまでの時間も増えている • トータルで見るとレビュー対応に費やす時間が増えている 61
© DMM 時間の増加 62
© DMM AIコードレビューの効果 品質向上への寄与を多く感じる 人が見落としがちな部分も指摘する バグに繋がるようなミスやコード構造のズレに気づける • テストシナリオと実態が異なる • 画面によって実装方法が異なる
• メソッド名と実装が異なる 63
© DMM AIコードレビューの効果 コード品質だけではなく、プロダクト品質にも アクセシビリティ対応 • ボイスオーバー用文字列の追加 • content descriptionの追加
• UIコンポーネントサイズの提案 64
© DMM 目指した状態になった?
© DMM 目指したい状態 • 細かい問題は事前に検出され、レビュー前に解決されている • コードを人が見るだけでは気づきにくい不具合を早期に検出できる • 属人性を排除し、安定したコード品質を担保できる体制の構築 66
© DMM 目指したい状態 • 細かい問題は事前に検出され、レビュー前に解決されている • 対応後にOpenすることで解決 • コードを人が見るだけでは気づきにくい不具合を早期に検出できる •
シナリオや命名とのズレが指摘される • プロジェクト全体の内容を踏まえた提案 • 属人性を排除し、安定したコード品質を担保できる体制の構築 • コーディングルールを加味した AIにより一定のレビュー品質が担保 67
© DMM 完璧?
© DMM 改善・課題点 マージまでの時間は長いまま 内容が誤っている時がある 不要な内容の提案がある プロンプト更新後の動作確認がやりづらい チームの状況的にPR作成が少ない時期も一定のコスト 69
© DMM 今後の話
© DMM 今後の展望 • 他AIツールでのコードレビュー効果測定 • Claude Code Actionを試しはじめた •
プロンプト・設定の継続的な改善 • マージまでの時間短縮 71
© DMM Claude Code Action Claude CodeをGitHub Actions上で利用できる 別目的でClaude Code
Actionをチームで導入し始めた 様々な用途で利用できる可能性を感じている コードレビューできるように整備中 :loading: 72
© DMM さいごに CodeRabbitによるコードレビューの効果を実感 • レビュー時間短縮 • 内部品質・外部品質の改善 • 不具合の事前検知
気軽に導入でき、チームやプロダクトに応じた設定が可能 チャット形式によるやりとりによるAI学習も魅力的 73
© DMM さいごに もっと詳しく知りたい人は以下も参考に! • https://speakerdeck.com/mitohato14/coderabbittoguo-gosita1keyu e-aikodorebiyudao-ru-deshi-gan-sitatimukai-fa-nojin-hua • https://developersblog.dmm.com/entry/2025/06/06/110000 •
https://findy-tools.io/products/coderabbit/407/540 74