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
yuyu_hf
PRO
March 29, 2024
0
89
他チームレビューのコツ
「【KURAND社 協賛】仕事とお酒を愛でる「ソースコード」レビューまつり!」のLT資料です。
yuyu_hf
PRO
March 29, 2024
Tweet
Share
More Decks by yuyu_hf
See All by yuyu_hf
クラウドネイティブなNewSQLで実現するミッションクリティカルなアプリケーションの運用
yuyu_hf
PRO
1
190
マイクロサービスを横断したGoのコードレビュー
yuyu_hf
PRO
1
370
DMMプラットフォームを支える負荷試験基盤
yuyu_hf
PRO
2
2.2k
DMMの取り組み最前線 ~フルマネージドNewSQLであるTiDB Cloudの可能性~
yuyu_hf
PRO
4
4.1k
マイクロサービスプラットフォーム向け負荷試験基盤の初期リリースを終えた話
yuyu_hf
PRO
2
1.9k
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Site-Speed That Sticks
csswizardry
2
190
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
How to train your dragon (web standard)
notwaldorf
88
5.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
Building Adaptive Systems
keathley
38
2.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
A better future with KSS
kneath
238
17k
Making Projects Easy
brettharned
116
5.9k
Gamification - CAS2011
davidbonilla
80
5.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
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