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
Looks Good To Me 読書会でレビューの質が向上した話
Search
DaisukeShinoku
July 10, 2025
Programming
150
0
Share
Looks Good To Me 読書会でレビューの質が向上した話
DaisukeShinoku
July 10, 2025
More Decks by DaisukeShinoku
See All by DaisukeShinoku
Roppongi.rbへの会場提供を始めて1年が経ちました
daisukeshinoku
0
61
create_tableをしただけなのに〜囚われのuuid編〜
daisukeshinoku
0
620
最短リリースの壁を超えろ!チーム立ち上げから71営業日でプロダクトリリースした話
daisukeshinoku
1
2k
Ruby と Rails の小ネタ集
daisukeshinoku
3
2.3k
受託開発から人事労務SaaSに転職して1年間でやったこと
daisukeshinoku
2
2.2k
今の SmartHR にエンジニアで入社するとどうなるの?
daisukeshinoku
8
7.1k
テンショク・ジャーニー —航海士だった僕が、SaaS企業でエンジニアとして働き始めるまで—
daisukeshinoku
1
2.2k
仕事観がアップデートされた読書体験 「エンジニアリング組織論への招待」を読んで
daisukeshinoku
2
2.1k
はじめてのアジャイル・スクラム開発での新鮮な発見
daisukeshinoku
2
2.9k
Other Decks in Programming
See All in Programming
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
350
Radical Imagining - LIFT 2025-2027 Policy Agenda
lift1998
0
250
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
830
iOS機能開発のAI環境と起きた変化
ryunakayama
0
170
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
220
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
340
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
110
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
290
RSAが破られる前に知っておきたい 耐量子計算機暗号(PQC)入門 / Intro to PQC: Preparing for the Post-RSA Era
mackey0225
3
120
ドメインイベントでビジネスロジックを解きほぐす #phpcon_odawara
kajitack
2
120
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.1k
脱 雰囲気実装!AgentCoreを良い感じにWEBアプリケーションに組み込むために
takuyay0ne
3
440
Featured
See All Featured
A better future with KSS
kneath
240
18k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
200
Context Engineering - Making Every Token Count
addyosmani
9
800
From π to Pie charts
rasagy
0
160
How to Talk to Developers About Accessibility
jct
2
170
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.6k
Producing Creativity
orderedlist
PRO
348
40k
30 Presentation Tips
portentint
PRO
1
270
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
160
Designing Experiences People Love
moore
143
24k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Transcript
© SmartHR, Inc. Looks Good To Me 読書会で レビューの質が向上した話 〜Rails
での具体例を添えて〜 新奥 ⼤介 SmartHR プロダクトエンジニア 2025/07/10
お話すること 1. Looks Good To Me という本の紹介 2. チームが読書会を始めた理由 3.
読書会前後のレビューコメント⽐較 4. 読書会をやってみてどうだったか
Looks Good To Me の紹介 Looks Good To Me •
Adrienne Braganza (著) • ⾼⽥新⼭ (翻訳) • 増井敏克 (監修) • 秀和システム • 2025年5⽉30⽇ 発売 3
Looks Good To Me 読書会をチームで始めた理由 なぜ LGTM の読書会をチームで始めたか? • AI活⽤によってPR作成数が相対的に増加
• レビューに費やす時間が多くなってきた • 「レビューの重要性が上がってきてるよね」という認 識がチーム内で⼤きくなってきた • 毎週⾦曜⽇にテックトークという技術ネタ雑談タイム を設けていたが若⼲ネタが枯渇していた 4
Looks Good To Me 読書会をチームで始めた理由 なぜ LGTM の読書会をチームで始めたか? • AI活⽤によってPR作成数が相対的に増加
• レビューに費やす時間が多くなってきた • 「レビューの重要性が上がってきてるよね」という認 識がチーム内で⼤きくなってきた • 毎週⾦曜⽇にテックトークという技術ネタ雑談タイム を設けていたが若⼲ネタが枯渇していた 5
「なんか良さそう」 という興味駆動で 勉強会がスタート! 6
読書会によって⽣まれた効果 読書会で⽣まれたチーム‧プロセスの変化 • PRオープン前のセルフレビュー項⽬の整備 • コメントシグナルの改善&チーム内認識の統⼀ • レビュー後にApprove or Request
Changeを必ず明⽰ ◦ マージブロックか否かを迷わなくなった • PRタイトルをConventional Commits仕様に統⼀ 7
読書会によって⽣まれた効果 読書会で⽣まれたチーム‧プロセスの変化 • PRオープン前のセルフレビュー項⽬の整備 • コメントシグナルの改善&チーム内認識の統⼀ • レビュー後にApprove or Request
Changeを必ず明⽰ ◦ マージブロックか否かを迷わなくなった • PRタイトルをConventional Commits仕様に統⼀ 8
読書会前後のコメントの⽐較 読書会以前のコメント 9
読書会前後のコメントの⽐較 読書会以前のコメント 10
読書会前後のコメントの⽐較 11 正しくない気がするので確認をお願いします • ⼀⾒問題なさそうな、よくあるやりとりではある • 強いて⾔うのであれば ◦ レビュアーの気になりポイントがやや不明瞭 ◦
PR作成者に求めるNext Actionが少し曖昧 • 結果としてレビュアーの求めることとPR作成者が⾏っ た対応に齟齬が⽣じてしまっている
読書会前後のコメントの⽐較 読書会以前のコメント 12
読書会前後のコメントの⽐較 読書会以前のコメント 13
読書会前後のコメントの⽐較 14 [MUSTだけどnits]ファイル分けたいです! • これも決して悪いコメントではない • [MUSTだけどnits]というコメントシグナルが ◦ なんとなく⾔いたいことはわかる ◦
ただマージブロックなのかどうか不明確 • 結果として対応はするが「コメントシグナル意味ある かな?」というモヤりが残る
読書会後にチームは どうなれたか? 15
読書会前後のコメントの⽐較 16 トリプルRパターンでのコメントを意識 • 依頼(Request): ◦ PR作成者に何をしてほしいのか • 理由(Rationale): ◦
依頼が必要な理由の説明 • 結果(Result): ◦ PR作成者が変更を⽐較できる測定可能な最終状態
読書会前後のコメントの⽐較 トリプルRパターンに沿ったコメント 17
読書会前後のコメントの⽐較 トリプルRパターンに沿ったコメント 18 依頼
読書会前後のコメントの⽐較 トリプルRパターンに沿ったコメント 19 理由
読書会前後のコメントの⽐較 トリプルRパターンに沿ったコメント 20 結果
読書会前後のコメントの⽐較 21 コメントシグナルの統⼀ • マージブロックとするもの ◦ needs change: ▪ 1回のコミットで解決できる⼩さな変更と修正
◦ needs rework: ▪ ⼤きな⼿直しやリファクタリングを必要とする変更 ◦ align: ▪ 機能的に問題ないが、チーム規約に準拠していない • 未対応でもマージしてよいもの ◦ levelup: ▪ 品質向上のために変更が推奨されるがPRの承認は⽌めない ◦ nitpick: ▪ コードに影響を与えない単なる主観的なコメント
読書会前後のコメントの⽐較 コメントシグナルの活⽤ 22
読書会前後のコメントの⽐較 23 必須ではないがRSpecの保守性も気にしたい コメントシグナルの活⽤
読書会前後のコメントの⽐較 24 規約&他実装箇所に反した書き⽅は直したい コメントシグナルの活⽤
まとめ 1. 気軽な気持ちで始めた読書会だった 2. いざ読み進めていくとアンチパターンに⼼当たりがあった 3. コメントシグナル‧PRタイトルの統⼀などすぐに開始できる 事例が多数あった 4. 本⽂中の事例以外でも、全員で同じ本を読むことによって
「レビュー後は絶対にApproveかRequest Changesのどちら かをつけよう!」などの共通認識が明⽂化された チームのコードレビューの質が向上!
Looks Good To Me をチームで読んで 気持ちの良いコード レビューのプロセス を確⽴していこう! 26
ご清聴ありがとうご ざいました! 27