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
Hideaki ishii
March 05, 2025
Programming
1
320
良いコードレビューとは
こちらの発表内容です。
https://findy.connpass.com/event/345102/
Hideaki ishii
March 05, 2025
Tweet
Share
More Decks by Hideaki ishii
See All by Hideaki ishii
I know everything about mocks, stubs, and spies in RSpec
danimal141
0
210
事業に向き合い続けたい私は、それでもRailsを使い続ける
danimal141
8
6.1k
Other Decks in Programming
See All in Programming
AIプログラミング雑キャッチアップ
yuheinakasaka
19
4.8k
CSS Linter による Baseline サポートの仕組み
ryo_manba
1
160
バッチを作らなきゃとなったときに考えること
irof
2
530
Kotlinの開発でも AIをいい感じに使いたい / Making the Most of AI in Kotlin Development
kohii00
5
1.4k
未経験でSRE、はじめました! 組織を支える役割と軌跡
curekoshimizu
1
170
sappoRo.R #12 初心者セッション
kosugitti
0
280
iOSでQRコード生成奮闘記
ktcryomm
2
110
ソフトウェアエンジニアの成長
masuda220
PRO
12
2.1k
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
160
Jakarta EE meets AI
ivargrimstad
0
510
はじめての Go * WASM *OCR
sgash708
1
110
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
9
2.5k
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Bash Introduction
62gerente
611
210k
Designing for humans not robots
tammielis
250
25k
Facilitating Awesome Meetings
lara
53
6.2k
Site-Speed That Sticks
csswizardry
4
410
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Product Roadmaps are Hard
iamctodd
PRO
51
11k
Practical Orchestrator
shlominoach
186
10k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Transcript
良いコードレビューとは ©︎ 2025 Speee, Inc.
自己紹介 項目 内容 ID @danimal141 氏名 石井秀明 所属 株式会社Speee 不動産DX事業部
エンジニアリングマネージャー 趣味 飲酒 (特にウイスキー)、アニメ、映画、読書、カラオケ、ウクレレ等 ©︎ 2025 Speee, Inc.
今日はどんな話をするか まずは良いコードレビューの定義について 良いコードレビューをチームで運用するために、Reviewer / Revieweeそれぞれが大 切にしたい観点について ©︎ 2025 Speee, Inc.
本発表で扱わないこと 具体的にどのようなツールを使うか どのようにコードレビューを組織で運用しているか といったHowの話は扱いません。 ©︎ 2025 Speee, Inc.
良いコードレビューとは ©︎ 2025 Speee, Inc.
©︎ 2025 Speee, Inc.
ご清聴ありがとうございました! ©︎ 2025 Speee, Inc.
「良いコードレビュー」 = 「事業成長を加速させるためのコードレビ ュー」 今回は何かしらの事業を成長させるためのプロダクト開発チームでコードレビュー をしている・しようとしている方をメインターゲットに想定し、私の考える「事業 を成長させるためのコードレビューってこうあるべきだよね」を話します 我々は日々、市場、競合、事業戦略、組織などの様々な変化に晒されながら、限ら れたリソースの中で事業やプロダクトを成長させていかねばなりません ©︎
2025 Speee, Inc.
「事業成長を加速させるためのコードレビュー」 = 「変化に対応可能 で一貫性のあるソフトウェア設計を守るためのコードレビュー」 コードレビューとは、 今、目の前でやろうとしている機能開発の 目的、完了条件・勝利条件に対して、筋 が通った進め方ができていそうか 中長期的に良質な顧客体験を提供し続けるために足枷になりそうなリスクに対し て、チームでどう対処するか
中長期的に開発速度を維持・加速させ続けるために足枷になりそうなリスクに対し て、チームでどう対処するか をチームメンバー全員で考え、改善し続けるための手段の一つである。 ©︎ 2025 Speee, Inc.
©︎ 2025 Speee, Inc.
( 余談) コードレビューの今後 本日は対「人間」を想定していますが、今後は対「AI」なコードレビューが増える かもしれないですね 皆がAIを部下に持つマネージャーのようになり、自身がコードを書くよりも指示を 出すことがメインのお仕事になるかもしれません ©︎ 2025 Speee,
Inc.
ここからは「良いコードレビュー」を運用するために、Reviewer / Reviewee 双方で大切にしたい観点(ふるまい / マインド) をご紹介し ます。 ©︎ 2025
Speee, Inc.
Reviewer 編 ©︎ 2025 Speee, Inc.
レビューする時に気をつけたいポイント PRで何をレビューするべきかを理解したか、 完了条件は明確になっているか 対象の実装は該当Issueの完了条件を満たしているか、バグやデグレはないか 設計は問題ないか 特にドメインモデル、DB設計など、 プロダクトにとってのコア価値につながる 部分は入念に コア価値を持続、拡張していくためのテストは十分に書かれているか パフォーマンス面やセキュリティ面など、
非機能要件は明確になっているか その要件に対して懸念はないか ©︎ 2025 Speee, Inc.
レビューする時に気をつけたいポイント ( マインド編) 自分が後にそのコードをメンテする想定で臨むべし 理解できない部分も積極的に質問する PR上での議論が難航しそうな場合はMTGやペアプロ、モブプロを提案するのも アリかも 良くない実装を見つけても、 人ではなくコードを指摘する 指摘する際も「
なぜ良くないと思うか」必ず理由をつけて議論する 自分の好みを押し付け過ぎない 良いと思った点は積極的に褒める 若手の方がコードレビューに挑戦する際はこれをおすすめしています ( 「その実装 の何が良いと思ったか」を言語化する訓練にもなるため) ©︎ 2025 Speee, Inc.
Reviewee 編 ©︎ 2025 Speee, Inc.
レビューされる時に気をつけたいポイント PRで何をレビューしてもらいたいかを明確にしているか 完了条件やスコープは明確になっているか また、自身の実装はその完了条件は満たしているか (セルフレビューできている か) PRのボリュームは適切か、PRを分割してレビュー依頼したほうが負担が少ない可能 性はないか 自分の書いたコードは 数ヶ月後、自分含めて誰が読んでも意図が理解できそうか
コードだけでは意図が伝わりにくそうな部分はコードコメントやADR ( 意思決定ド キュメント) を残せているか 実装は試行錯誤の結果であり、実装を読むだけではその過程を理解できないこと も多い (前提となるビジネス上の制約があったなど) ©︎ 2025 Speee, Inc.
レビューされる時に気をつけたいポイント ( マインド編) 自分の実装に関するどんな質問にも答えられるようにする Reviewerからの質問には「 なぜそのようにしたか」理由を明確にして回答でき るようにする それが難しいのであれば、レビュー依頼の前にもっと周囲に頼る必要があったり しないですか? Reviewerからの指摘が理解できない場合は積極的に質問する
(テキストだけで伝え づらいなら、MTGとかすればええやん) Reviewerからの指摘は自分にとっての学習機会であると捉える へこたれない強い気持ちも磨いていきましょう ©︎ 2025 Speee, Inc.
まとめ ©︎ 2025 Speee, Inc.
改めて、「良いコードレビュー」 = 「事業成長を加速させるためのコ ードレビュー」 コードレビューとは、 今、目の前でやろうとしている機能開発の 目的、完了条件・勝利条件に対して、筋 が通った進め方ができていそうか 中長期的に良質な顧客体験を提供し続けるために足枷になりそうなリスクに対し て、チームでどう対処するか
中長期的に開発速度を維持・加速させ続けるために足枷になりそうなリスクに対し て、チームでどう対処するか をチームメンバー全員で考え、改善し続けるための手段の一つである。 ©︎ 2025 Speee, Inc.
レビューをする時もされる時も常に目的を見失わず、気持ちの良い議 論を心がけたいですね! ©︎ 2025 Speee, Inc.
We are hiring! まずはカジュアルにお話しませんか! (特にEMを目指している方、生成AI関連のプロダクトをこれ から作って行きたい方) 新規事業 (生成AI関連)やEMの仕事についてぜひお話しましょう: https://pitta.me/matches/AATOvxaUYcyA ©︎
2025 Speee, Inc.
ご清聴ありがとうございました! ©︎ 2025 Speee, Inc.