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
11
11k
良いコードレビューとは
こちらの発表内容です。
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
230
事業に向き合い続けたい私は、それでもRailsを使い続ける
danimal141
8
6.2k
Other Decks in Programming
See All in Programming
メモリウォールを超えて:キャッシュメモリ技術の進歩
kawayu
0
1.9k
Java 24まとめ / Java 24 summary
kishida
3
510
カオスに立ち向かう小規模チームの装備の選択〜フルスタックTSという装備の強み _ 弱み〜/Choosing equipment for a small team facing chaos ~ Strengths and weaknesses of full-stack TS~
bitkey
1
110
Orleans + Sekiban + SignalR でリアルタイムWeb作ってみた
tomohisa
0
130
ComposeでWebアプリを作る技術
tbsten
0
120
趣味全開のAITuber開発
kokushin
0
200
GitHub Copilot for Azureを使い倒したい
ymd65536
1
200
Vibe Coding の話をしよう
schroneko
12
3k
Contribute to Comunities | React Tokyo Meetup #4 LT
sasagar
0
560
Cursor/Devin全社導入の理想と現実
saitoryc
24
17k
State of Namespace
tagomoris
4
2k
設計の本質:コード、システム、そして組織へ / The Essence of Design: To Code, Systems, and Organizations
nrslib
7
1.8k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
430
65k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
540
Code Review Best Practice
trishagee
67
18k
Building an army of robots
kneath
305
45k
How GitHub (no longer) Works
holman
314
140k
Designing for humans not robots
tammielis
253
25k
Designing Experiences People Love
moore
142
24k
A designer walks into a library…
pauljervisheath
205
24k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Embracing the Ebb and Flow
colly
85
4.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.2k
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.