Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
他チームレビューのコツ
Search
yuyu_hf
March 29, 2024
240
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
他チームレビューのコツ
「【KURAND社 協賛】仕事とお酒を愛でる「ソースコード」レビューまつり!」のLT資料です。
yuyu_hf
March 29, 2024
More Decks by yuyu_hf
See All by yuyu_hf
encoding/json v2を予習しよう!
yuyu_hf
3
1.9k
クラウドネイティブなNewSQLで実現するミッションクリティカルなアプリケーションの運用
yuyu_hf
1
440
マイクロサービスを横断したGoのコードレビュー
yuyu_hf
1
580
DMMプラットフォームを支える負荷試験基盤
yuyu_hf
2
2.4k
DMMの取り組み最前線 ~フルマネージドNewSQLであるTiDB Cloudの可能性~
yuyu_hf
4
4.3k
マイクロサービスプラットフォーム向け負荷試験基盤の初期リリースを終えた話
yuyu_hf
2
2.2k
Featured
See All Featured
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
580
The Language of Interfaces
destraynor
162
27k
Designing for humans not robots
tammielis
254
26k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
Faster Mobile Websites
deanohume
310
32k
Making the Leap to Tech Lead
cromwellryan
135
10k
How to build a perfect <img>
jonoalderson
1
6.1k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
840
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
350
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Transcript
他チームレビューのコツ 【KURAND社 協賛】仕事とお酒を愛でる「ソースコード」レビューまつり! いっぬ(@yuyu_hf) 1
自己紹介 いっぬ @yuyu_hf 合同会社DMM.comで認可領域のリードエンジニア をしています。副業の技術支援先でもリードエンジニ アをしています。GoでサーバーサイドAPIの開発を することが多いです。 2
今日LTするきっかけ 第7回のDMM.goでDMM Platformのマイクロサービスを開発する各チームにGoのコー ドレビューのサービスを提供した話をしました。 Speaker Deck https://speakerdeck.com/yuyu_hf/dmm-go-7-microservices-go-code-review YouTube https://www.youtube.com/watch?v=6PT8jnGTOx4 3
今日LTするきっかけ 発表内容を見た中西さんからLT会に誘ってもらいまし た。 LTでは他チームレビューするときのコツのみ話しま す。その他の内容は懇親会で話をさせてください。 4
他チームレビューするときのコツ 自分が開発に携わっているプロダクトのコードレビューと他チームレビューでは目的が 異なります。 他チームレビューをするときはまず目的を決めて、目的に合わせてどのようにコードレ ビューするか決めます。 5
いぬさんが他チームレビューしたときの目的 目的① チームの開発速度を上げる Goを使ったサーバーサイドAPIの開発に慣れていないチームに他チームレビューを提 供し、チームの開発速度を上げる。 目的② コード品質を上げる 事業部全体で技術的負債の返却をしている途中なので、新規/リプレースするプロダクト が技術的負債にならないようにプロダクトのコード品質を上げる。 6
いぬさんの他チームレビューの制限 制限 ・業務時間の内、週4時間 ~ 8時間を他チームレビューに使う ・他チームレビューは、非同期のPRへのコメントで行う ・基本的に他チームのMTGには参加せず、PRのレビューのみ実施する ・他チームより自分のチームの仕事を優先する 7
コツ① レビューはベストエフォートで実施する いぬさんのチームで優先度の高いタスクがある場合、PRが作成されてからすぐに他 チームレビューできません。 いぬさんのコードレビュー待ちでチームの開発速度が下がってはいけないので、チーム 都合でPRをマージしてもらいます。 8
コツ② 全部レビューしない 他チームレビューのレビュアーは、レビュー先のチームメンバーに比べてプロダクトの仕 様の理解が浅い。 他チームレビューのレビュアーにプロダクトの仕様を十分に理解させようとすると、レビュ アー/レビュイーの工数がかかる。 プロダクトの仕様に関するレビューは基本的に諦めて、コードを読んだときに良いコード になっているかどうかでレビューをする。 9
コツ② 全部レビューしない レビューするもの例 ・Goの書き方 ・コードの書き方として品質が低いところ レビューしないもの例 ・仕様の確認 ・テスト ・CI/CDの仕組み 10
コツ③ レビューを具体的に伝える メリデメを説明する 通常のコードレビューと異なり、他チームレビューでは教育の観点でもレビューを実施し ます。 レビューでコードの修正案を出すだけでなく、修正案を採用するときのメリデメを説明し ます。 レビュイー自身がメリデメを考えながらコーディングできるようになることが目的です。 11
12 引用元: https://speakerdeck.com/yuyu_hf/dmm-go-7-microservices-go-code-review?slide=11
コツ③ レビューを具体的に伝える サンプルコードを書く コードレビューではレビューした修正案に対して、レビュアーとレビュイーの間で変更後 のコードに認識齟齬が発生しがちです。 レビューした修正案と修正後のコードをセットでコメントすることで、認識齟齬が発生する ことを防ぎます。 13
コツ③ レビューを具体的に伝える サンプルコードを書く 14 引用元: https://speakerdeck.com/yuyu_hf/dmm-go-7-microservices-go-code-review?slide=15
コツ④ 同期的レビューを併用する 他チームレビューは非同期で行われます。 他チームレビューに慣れていない人だと、説明しづらいレビュー内容をテキストコミュニ ケーションで説明しようとしがちです。 説明しづらいレビュー内容は同期的にレビューするほうがレビュアー/レビュイー双方の コミュニケーションコストが下がる。 15
おわり いぬさんが他チームレビューを担当していたときに工夫していた点をコツとして紹介しま した。 他チームレビューにチャレンジする人はぜひ参考にしてください。 16