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
12
12k
良いコードレビューとは
こちらの発表内容です。
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
240
事業に向き合い続けたい私は、それでもRailsを使い続ける
danimal141
8
6.3k
Other Decks in Programming
See All in Programming
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
310
時間軸から考えるTerraformを使う理由と留意点
fufuhu
16
4.8k
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
270
Ruby Parser progress report 2025
yui_knk
1
450
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.4k
Cache Me If You Can
ryunen344
2
3k
請來的 AI Agent 同事們在寫程式時,怎麼用 pytest 去除各種幻想與盲點
keitheis
0
120
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
250
Laravel Boost 超入門
fire_arlo
3
220
私の後悔をAWS DMSで解決した話
hiramax
4
210
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
620
複雑なフォームに立ち向かう Next.js の技術選定
macchiitaka
2
200
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
696
190k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Building an army of robots
kneath
306
46k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
What's in a price? How to price your products and services
michaelherold
246
12k
How to train your dragon (web standard)
notwaldorf
96
6.2k
A designer walks into a library…
pauljervisheath
207
24k
How GitHub (no longer) Works
holman
315
140k
Rails Girls Zürich Keynote
gr2m
95
14k
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.