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
Yosuke Furukawa
PRO
October 25, 2021
Programming
83
52k
レビューの仕方
Open8 勉強会で発表したレビューの仕方と心理的安全性の話しです。
Yosuke Furukawa
PRO
October 25, 2021
Tweet
Share
More Decks by Yosuke Furukawa
See All by Yosuke Furukawa
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
6
3.2k
Welcome JSConf.jp 2024
yosuke_furukawa
PRO
1
3.9k
tc39 x jsconf.jp Panel Discussion 2024
yosuke_furukawa
PRO
0
210
Removing Corepack
yosuke_furukawa
PRO
9
1.5k
JavaScript Runtime とはなにか
yosuke_furukawa
PRO
15
2.7k
Strip Types と Storage
yosuke_furukawa
PRO
4
380
Module Harmony について
yosuke_furukawa
PRO
3
1.7k
LTのやり方
yosuke_furukawa
PRO
16
2.5k
AppRouter Panel Talk
yosuke_furukawa
PRO
3
780
Other Decks in Programming
See All in Programming
SEAL - Dive into the sea of search engines - Symfony Live Berlin 2025
alexanderschranz
1
130
エンジニアが挑む、限界までの越境
nealle
1
160
Coding Experience Cpp vs Csharp - meetup app osaka@9
harukasao
0
750
Strategic Design (DDD)for the Frontend @DDD Meetup Stuttgart
manfredsteyer
PRO
0
140
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
3
810
KawaiiLT 登壇資料 キャリアとモチベーション
hiiragi
0
110
海外のアプリで見かけたかっこいいTransitionを真似てみる
shogotakasaki
1
170
Kamal 2 – Get Out of the Cloud
aleksandrov
1
190
Agentic Applications with Symfony
el_stoffel
2
300
VitestのIn-Source Testingが便利
taro28
5
1.4k
リアルタイムレイトレーシング + ニューラルレンダリング簡単紹介 / Real-Time Ray Tracing & Neural Rendering: A Quick Introduction (2025)
shocker_0x15
1
300
SwiftUI API Design Lessons
niw
1
290
Featured
See All Featured
Gamification - CAS2011
davidbonilla
81
5.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
119
51k
Raft: Consensus for Rubyists
vanstee
137
6.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.4k
Agile that works and the tools we love
rasmusluckow
328
21k
Typedesign – Prime Four
hannesfritz
41
2.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Bash Introduction
62gerente
611
210k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Building Applications with DynamoDB
mza
94
6.3k
Side Projects
sachag
452
42k
Transcript
ϨϏϡʔͷํ 2021/10/25 @ Open8 ษڧձ
Twitter: @yosuke_furukawa Github: yosuke-furukawa ࠷ۙͷ׆ಈ $ISPNF"EWJTPSZ#PBSE +4$POG+1PSHBOJ[FSFUD
ίʔυϨϏϡʔʹ͍ͭͯͷ
ίʔυϨϏϡʔࢀߟจݙɹ https://google.github.io/eng-practices/
ίʔυϨϏϡʔͷલʹ
ίʔυϨϏϡʔͷલʹؾʹͯ͠ ͓͘͜ͱ • ίʔυͷঢ়ଶʹ͓͍ͯʮBestʯଘࡏ͠ͳ͍ • ʮBetterʯ͕͋Δ͚ͩ • ݪཧओٛతͳࢥͰʮBestʯΛ͍ٻΊͯ αʔϏεͱͯ͠ಈ͔ͳ͔ͬͨΒແՁ
ίʔυϨϏϡʔͷલʹؾʹͯ͠ ͓͘͜ͱ • ίʔυͷঢ়ଶʹ͓͍ͯʮBestʯଘࡏ͠ͳ͍ • ʮBetterʯ͕͋Δ͚ͩ • ݪཧओٛతͳࢥͰʮBestʯΛ͍ٻΊͯ αʔϏεͱͯ͠ಈ͔ͳ͔ͬͨΒແՁ ͜͜Λצҧ͍ͪ͠Ό͍͚ͳ͍ɻ
͋Δ͖࢟Λ͍ٻΊͭͭɺՁΛ࢈Έͩ͢ඞཁ͕͋Δɻ
ίʔυϨϏϡʔͷత
ίʔυϨϏϡʔͷత • ͦͷίʔυ͕Ճ͞ΕΔ͜ͱͰɺίʔυશମ ͷ݈શੑ্͕͞Ε͍ͯΔ͜ͱ • ͏গ͠ࡅ͍ͯݴ͏ͱɺࠓΑΓίʔυ͕ Better ͳঢ়ଶʹͳΔ͜ͱ 1VMM3FRVFTU͕࡞ۀରͷίʔυશମͷ݈શੑΛ্͍ͤͯ͞Δ #FUUFSʹͳΔ
ͱ͍͏ج४ΛຬͨͤɺϚʔδ͠ͳ͚Ε͍͚ͳ͍ɻ
ίʔυϨϏϡʔͷత • ίʔυ͕ Best ͳঢ়ଶͰ͋Δඞཁͳ͘ɺ Better ͳঢ়ଶͰ͋Εྑ͍ɻ • Ϛʔδ͢Δલʹ͋ΒΏΔࡉ͔͍෦ͷચ࿅Λ ٻΊΔ͖Ͱͳ͍ɻ
• ϨϏϡΞ͕ٻΊΔͷᘳ͞Ͱͳ͘ɺܧଓ తͳվળͰ͋Δ͖ɻ
ίʔυϨϏϡʔͷత • ᘳͳͷͰͳͯ͘Ϛʔδ͠ͳ͚ΕͳΒ ͳ͍ɻ • ҰํͰɺίʔυͷ݈શੑ͕ଛͳΘΕ͍͍ͯ ͱ͍͏༁Ͱͳ͍ɻ • ݈શੑ͕ࣦΘΕΔίʔυΛϚʔδͯ͠ྑ͍ͷ ʮۓٸࣄଶʯͷͱ͖͚ͩɻ
ݪଇ • ٕज़తͳࣄ࣮σʔλʹΑͬͯͷमਖ਼ݸਓͷΈΑΓ ॏࢹ͢Δ͖ • ελΠϧͷελΠϧΨΠυΛࣄલʹܾΊ͓͖ͯ͘ • ෳͷબ͕͋Γ͑ͯɺͲͪΒಉ༷ʹ݈શੑ͕୲อ͞ ΕΔͷͰ͋Εɺίʔυ࡞ऀͷҙݟ͕ଚॏ͞ΕΔ͖ •
্هͷͲͷϧʔϧͯ·Βͳ͍߹ϨϏϡϫʔʹΑ ΔҰ؏ੑ͕ࢦఠ͞ΕΔ͖
࣮ྫ1: ςετίʔυͳ͠ίϛο τ • ίʔυͷػೳతͳՃ͞Ε͍ͯΔ͕ɺςετίʔ υ͕શ͘ଘࡏ͠ͳ͍ • ίʔυͷ݈શੑͱ͍͏ҙຯͰςετίʔυ͕ଘ ࡏ͠ͳ͍ίʔυϚʔδ͞ΕΔ͖Ͱͳ͍ •
ͨͩ͠ɺςετίʔυ͕ͦͦଘࡏ͠ͳ͍ͱ͜ Ζʹରͯ͠ػೳͷՃΛ͍ͯ͠ΔͷͰ͋ΕɺࠓΑ Γ͔ྑ͘ͳ͍ͬͯΔͨΊɺϚʔδ͞ΕΔ͖ɻ
࣮ྫ2: ΞϧΰϦζϜ͕͍ • ػೳՃ͞Ε͍ͯΔ͕ɺΞϧΰϦζϜ͕͘ɺͬ ͱ៉ྷʹߴͳͷ͕ॻ͚Δ࣌ • ͦΕ͕݈શ͔Ͳ͏͔ͰܾΊΔɻଞͷؔશͯߴԽ ϦʔμϏϦςΟʹྀ͞Ε͍ͯΔͷͰ͋Εɺ݈શ ͡Όͳ͘ͳΔ͔ΒɺΞϧΰϦζϜΛ͖͢ •
ҰํͰผʹଞͦΜͳʹ៉ྷ͡Όͳ͍ͳΒɺҰ୴ίϝ ϯτʹ TODO Λॻ͍͓͍ͯͯϚʔδ͢Δͷ͋Γɻ
ϨϏϡʔͰݟΔ͖ॴ
ϨϏϡʔͰݟΔ͖ॴ • ίʔυ͕ͪΌΜͱઃܭ͞Ε͍ͯΔ͔Ͳ͏͔ • ػೳ͕ͪΌΜͱՃ͞Ε͍ͯΔ͔Ͳ͏͔ • ಈ࡞֬ೝͯ͠νΣοΫ͍͍ͯ͠ʢUIͷ࣌ඞ ਢʣ • ฒྻॲཧͱ͔ਖ਼نදݱͱ͔҆શੑʹؔΘΔॴ
దͳϨϏϡϫʔ͕ͪΌΜͱݟΔ
ϨϏϡʔͰݟΔ͖ॴ • ίʔυ͕ඞཁҎ্ʹෳࡶ͡Όͳ͍ • কདྷඞཁʹͳΔ͔ɾɾɾΈ͍ͨͳͷ࣮ ͠ͳ͍΄͏͕͍͍ • ςετ͕ଘࡏ͢Δ͔ • ςετ͕దʹઃܭ͞Ε͍ͯΔ͔
ϨϏϡʔͰݟΔ͖ॴ • มɾؔɾΫϥε໊ͳͲ͕ͪΌΜͱ໋໊͞ Ε͍ͯΔ͔ • ίϝϯτʹ Why ͕ॻ͔Ε͍ͯΔ͔ • What
Λॻ͍͍͚ͯͳ͍
ϨϏϡʔͰݟΔ͖ॴ • υΩϡϝϯτ͕ॻ͔Ε͍ͯΔ͔ • ελΠϧελΠϧΨΠυʹै͍ͬͯΔ͔ • ελΠϧΨΠυ͕ͳ͍ͳΒ͔ͦ͜ΒΔ ͖
ϨϏϡʔͰݟΔ͖ॴ • ͯ͢ͷߦΛͪΌΜͱݟ͍ͯΔ͜ͱ • ίϯςΩετΛଊ͍͑ͯΔ͔Ͳ͏͔ • ྑ͍ॴ͕͋ͬͨΒͪΌΜͱ๙ΊΔ
ίʔυϨϏϡʔͷεϐʔυ
ίʔυϨϏϡʔͷεϐʔυ • ίʔυϨϏϡʔͷεϐʔυ͕νʔϜͷεϐʔυͱ ੜ࢈ੑʹ݁͢Δ • ͕͔͔࣌ؒΕ͔͔Δ΄ͲίʔυϨϏϡʔͷϓϩ ηε͕໘ʹײ͡ΒΕΔ • ϨϏϡʔ͕͍ͱίʔυΛϦϑΝΫλϦϯάͨ͠ Γςετॻ͍ͨΓͱݴͬͨॲཧΛΓͨ͘ͳ͘ͳ
Δ
ίʔυϨϏϡʔ͍ͭΔ͔ʁ
དྷͨΒ͙͢Δɻ ͯ͘ཌ·ͰʹΔɻ
ͱΓ͋͑ͣ࠷ॳͷฦࣄΛฦͦ͏ • Ϛʔδ͞ΕΔ·Ͱ͕͘ͳ͖Ό͍͚ͳ͍Θ͚ ͡Όͳ͍ɻ • શ෦ݟΔͷΛҰͰΒͳ͖Ό͍͚ͳ͍Θ͚ ͡Όͳ͍ɻ • ͱΓ͋͑ͣ࠷ॳͷฦࣄΛฦ͢·Ͱ͕ҰҎ ͱ͍͏ɻ
ଚܟͱײँ • ͕࣌ؒऔΕͳ͍ͳΒऔΕͳ͍ͳΓʹฦ͠ํ͕ ͋Δ • PR ͷઆ໌ΛಡΉ͚ͩͰ͋ΔఔฦͤΔ͕࣌͋ Δ • ଚܟͱײँͷҙΛ͑Δ͚ͩͰྑ͔ͬͨΓ
͢Δ
͍PRͩͳʔͱࢥͬͨΒׂ͠ ͯΒ͏ • PR͕ͯ͘ɺಡΈΔ·Ͱʹ͕͔͔࣌ؒΔͳΒ ׂͯ͠Β͏ख͋Δ • ϝΠϯ෦͚ͩՃͯ͠ΒͬͯɺΓͷPR ผύʔτʹ͚ΔͳͲ • খ͞ͳPRΛ࡞Δ͜ͱϨϏϡϫʔΛॿ͚Δࣄ͕
ଟ͍
ྫ֎
ۓٸࣄଶ
ۓٸࣄଶ • ϢʔβʔʹӨڹͷ͋Δόά͕ग़ͯΔ • ηΩϡϦςΟϗʔϧ͕͋ͬͯσʔλྲྀग़͕ى ͖ͦ͏ • ͳͲͳͲ • ͜͏͍͏࣌ίʔυͷ݈શੑΛΕ͍͍ͯɻ
ίʔυϨϏϡʔͷ͏Ұͭͷ త
ίʔυϨϏϡʔʹϝϯλϦϯ άͷଆ໘͕͋Δ • ίʔυϨϏϡʔڭҭͷͰ͋Δ • ͦ͏͍͏࣌ʹ͑ͯݫ͘͠ڭ͑Δͷྑ͍ • ͕ࣗࠓ݈શੑ୲อͷࢠΛ͔Ϳ͍ͬͯͯ͠Δͷ ͔ɺϝϯλʔͱͯ͠ͷҭͷࢠΛ͔Ϳ͍ͬͯͯ͠Δ ͷ͔Λೝࣝ͢Δ
• ͦͷ্ͰͷίϝϯτͰ͋ΕBestΛٻΊΔ͜ͱ͋Γɻ
ίʔυϨϏϡʔͰҙݟ͕ରཱ ͨ͠ͱ͖
ҙݟ͕ରཱͨ͠ͱ͖ • จ໘͚ͩͰΓऔΓ͠ͳ͍ɻ • ର໘/ΦϯϥΠϯͰϛʔςΟϯά͢Δɻ • ϛʔςΟϯάͷࡍʹPRͷίϝϯτཝʹٞࣄΛ͢ • ͦΕͰมΘΒͳ͍࣌ר͖ࠐΉਓΛ૿͢ •
νʔϜϦʔμʔʹೖͬͯΒ͏ • ٕज़ސʹॿྗΛٻΊΔ˒˒˒ • ॏཁͳ͜ͱ: ҙݟ͕ରཱͯ͠Δ͔ΒͱݴͬͯPRΛ์ஔ͍͚ͯ͠ͳ͍
͜͜·Ͱݟ͔ͯΔ௨Γ
ίʔυϨϏϡʔͱ୯ͳΔ։ ൃ࡞ۀͰͳ͘ɺνʔϜϏϧ υͰ͋Δ
ͪΐͬͱໟ৭ͷҧ͏ • THE CULTURE CODE ࠷ڧνʔϜΛ࡞Δํ๏ https://www.amazon.co.jp/dp/4761273828/
࠷ڧͷνʔϜΛ࡞Δʹ • ҆શͳڥΛ࡞Δ͜ͱ͕Ұ൪ • ͍ΘΏΔʮ৺ཧత҆શੑʯͱݺΕΔͷ • ҆શͳڥ͕ͳ͍߹ɺͲΜͳʹྑ͍ϨϏϡʔ Λ͍ͯ͠Δͱͯ͠νʔϜͷੜ࢈ੑམͪΔ • ࠷ऴతʹίʔυͷ݈શੑʹͭͳ͕Βͳ͍ɺ
Ώͬ͘ΓͱഇΕ͍ͯ͘
ͱ͋Δ࣮ݧ • ৽͍͠ϚʔέςΟϯάઓུΛߟ͑ΔձٞΛ3ͭ࡞ͬͨ • χοΫͱ͍͏ֻ͚ਓΛૹΓࠐΉ • χοΫʮ߈ܸతͳଶΛऔΔʯʮଵଦͳʯ ʮԿ͔ͱ۪ஒΛݴ͏ʯͷ̏ͭΛͦͷͦΕͧΕͷ ձٞͰߦͬͨɻ •
Ͳ͏ͳ͔ͬͨɾɾɾʁ
શͯͷձٞͰ30-40%ੜ࢈ੑ ͕Լͨ͠
͜͏͍͏ਓ͕͍Δ߹ • ͔ʹͦͷਓΛഉআ͠ͳ͍ͱ͍͚ͳ͍ • ͨͩ͠ɺඞͣͦ͠ͷਓΛഉআͰ͖ͳ͍͕࣌ ͋Δ • ͦ͏͍͏ͱ͖ʹத׆ಈΛऔΔ͕Ͱ͖Δͱ ྑ͍ɻ
த׆ಈ • ʮͦͷΞΠσΞ͍͍ͱࢥ͏ʯͳͲͷͪΐͬͱͨ͠ঝ ೝ • ʮ͜ΕΓ͖ͬͨΒձࣾͷʹܨ͕Γ·͢ͶʯͳͲ ͷΔؾΛग़͢ൃݴ • ʮ૬खͷҙݟΛ૬ṀΛଧͪͳ͕Β৺ʹฉ͘ʯͱ͍ͬ ͨฉ͖ग़࢟͢
• ͳͲͳͲ
த׆ಈ • ʮͦͷΞΠσΞ͍͍ͱࢥ͏ʯͳͲͷͪΐͬͱͨ͠ঝ ೝ • ʮ͜ΕΓ͖ͬͨΒձࣾͷʹܨ͕Γ·͢ͶʯͳͲ ͷΔؾΛग़͢ൃݴ • ʮ૬खͷҙݟΛ૬ṀΛଧͪͳ͕Β৺ʹฉ͘ʯͱ͍ͬ ͨฉ͖ग़࢟͢
• ͳͲͳͲ ͜ΕΒͷத׆ಈʹΑͬͯपΓͷϝϯόʔͷ৺ཧత҆શੑͷؾ͕Δ
࠷ڧͷνʔϜʹ৺ཧత҆શ ੑ͕ඞཁͳ͜ͱΘ͔ͬͨɻ Ͱ৺ཧత҆શੑͱͳʹ ͔ʁ
৺ཧత҆શੑͱ • ͜ͷάϧʔϓʹؼଐͯ҆͠શͩͱ͍͏ҙࣝͷ͜ͱ • ͦͷҙࣝҎԼͷ͕୲อ͞Ε͍ͯΔͱಘΒΕΔ • ϝϯόʔಉ࢜ͷަྲྀΛେʹ͍ͯ͠Δʢίϛϡχέʔγϣϯʣ • ϝϯόʔΛݸͱͯ͠ೝΊɺଚܟ͍ͯ͠ΔʢϦεϖΫτʣ •
͜ͷ͕ؔ͜Ε͔Βଓ͘ͱ͍͏ະདྷࢦʢϑϡʔνϟʔʣ • ৺ཧత҆શੑަྲྀͱଚܟͱະདྷࢦʹΑͬͯಘΒΕΔ
νʔϜͷύϑΥʔϚϯε5ͭ ͷܭଌՄೳͳཁૉΛ࣋ͭ • νʔϜશһ͕͠ɺ͢ྔಉ͡ɺͦΕͰ͍ͯɺҰճͷൃݴ͍ • ϝϯόʔؒͷΞΠίϯλΫτ͕Μɺձ͑ํʹϦεϖΫτ͕ ײ͡ΒΕΔ • Ϧʔμʔ͚ͩʹ͢ͷͰͳ͘ɺϝϯόʔಉ࢜Ͱίϛϡχέʔγϣ ϯ͕Μ
• ϝϯόʔؒͷݸਓతͳࡶஊ͕͋Δ • ϝϯόʔ͕ఆظతʹνʔϜΛΕͯɺ֎ͷڥʹ৮Εͯͬͯ͘ Δɻͦͷ࣌ʹ৽͍͠ใΛϝϯόʔͱڞ༗͍ͯ͠Δɻ
Ұݟ͢Δͱʮ͑ͬͦΕ͕େࣄ ͳͷʁʯ͍ͬͯ͏ॴ͔Γ
զʑͷνʔϜͷύϑΥʔϚϯ εΛܾΊΔͷʮ҆͜͜શ ͳॴͩɺࢲୡͭͳ͕ͬͯ ͍Δʯͱ͍͏ϝοηʔδΛ ͑Δଶ
·ͱΊ
ίʔυϨϏϡʔͷํͱνʔϜ Ϗϧυ • ίʔυϨϏϡʔࠓΑΓྑ͘ͳΔ͜ͱΛड͚ೖΕΔͨΊʹ࣮ࢪ͢Δߦҝɺϕετ͕͋ΔΘ͚ ͡Όͳ͍͜ͱΛཧղ͢Δ • ίʔυϨϏϡʔʹઃܭɺػೳʹՃ͑ͯςετυΩϡϝϯτɺͯ͢ͷߦΛݟΔඞཁ͕͋Δ • ͳΔ͘ૉૣ͘ϨεϙϯεΛฦ͢ •
ᎍΊΔ͜ͱ͕͋Δͱࢥ͏͕ɺᎍΊͯݐઃతʹͳΔΑ͏ʹΊΔ • ͜ΕνʔϜϏϧυͱҰॹɺͳΔ͘ੜ࢈ੑΛԼ͛Δ͔Βԕ͚͟Δඞཁ͕͋Δ • த׆ಈΛ͢Δ͜ͱͰੜ࢈ੑͷݮୀΛதͰ͖Δ • ৺ཧత҆શੑͱʮ͜͜ʹ͍ͯ҆৺ͩʯͱ͍͏ؼଐҙࣝ • νʔϜશମͰʮ҆͜͜શͳॴͩɺࢲୡͭͳ͕͍ͬͯΔʯͱ͍͏ϝοηʔδΛ͑Δඞཁ͕ ͋Δ