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
Engineering Manager in Action
Search
Koichi ITO
December 06, 2022
Business
4
2.3k
Engineering Manager in Action
Koichi ITO
December 06, 2022
Tweet
Share
More Decks by Koichi ITO
See All by Koichi ITO
Beyond the RuboCop Defaults
koic
3
2.7k
Minify Ruby Code
koic
2
2.1k
Permanent Agility
koic
37
7.5k
RuboCop: LSP and Prism
koic
3
4.1k
Organizational Pattern Hatching
koic
0
1.5k
A Practitioner's Journey from Ruby 1.8 to Present
koic
1
2k
A Story Featuring Right Hand Archetype
koic
0
1.1k
Without Practice, No Emergence
koic
4
2.4k
The Resurrection of the Fast Parallel Test Runner
koic
1
6.2k
Other Decks in Business
See All in Business
Company deck
tricera
0
440
パーキング・チケット 発給設備のキャッシュレス化
tokyo_metropolitan_gov_digital_hr
0
260
組織拡大における マネージャーオンボーディング / Manager Onboarding in Organizational Expansion
takashi_toyosaki
1
140
採用資料
daichihayashi
0
260
コーチ・エィ_会社紹介資料
coacha
1
930
Recruiting Deck_株式会社HACHI
hachi_hiring
1
530
Nstock 採用資料 / We are hiring
nstock
26
240k
ファブリカホールディングス_2025年3月期 第2四半期説明資料
fabrica_com
0
2.7k
GovTech Express
botexpress
1
170
We Are PdE!! 〜高価値なプロダクトを作れるようになるための勉強会〜
leveragestech
1
550
5 Things Every L&D Pro Should Steal From Marketing
trainlikeamarketer
0
410
採用ピッチ資料
beglobal_document
0
290
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
180
21k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
It's Worth the Effort
3n
183
27k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Navigating Team Friction
lara
183
14k
The Cult of Friendly URLs
andyhume
78
6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Practical Orchestrator
shlominoach
186
10k
A designer walks into a library…
pauljervisheath
203
24k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Transcript
ҏ౻ߒҰ&4. *OD ϋϯζΦϯ ΤϯδχΞϦϯάϚωʔδϟʔ Ќ Engineering Manager in Action ެ։൛
&.ং
Ϛωδϝϯτ ͱԿ͔
Ϛωδϝϯτͱ
w ҐͱݖྗΛ࣋ͭͷͰͳ͍ w ෦ԼΛ࣋ͭͷ͕ϚωδϝϯτͰͳ͍ w ෦Լͷಇ͖Λ࣋ͭͷʹΛ࣋ͭ͜ͱ͕ ϚωδϝϯτͰͳ͍ Θ͔Δ͔ͳʁ w
ࣝΛߦಈʹ۩ମԽ͢Δ͜ͱʹΛ࣋ͭͷ υϥοΧʔࢣᐌ͘
ཧ͢Δͷ͔Β Ϧʔυ͢Δͷ ·ͣ͜͜ΛຊฤͷೖΓޱͱ͠·͠ΐ͏
ຊฤ&.ͷ ఆٛ
w POͰϐʔϓϧϚωδϝϯτͯͨ͠Β&. w ϓϩμΫτ։ൃͷνʔϜϏϧυͨ͠Β&. w ϓϩδΣΫτΛςοΫϦʔυͯͨ͠Β&. w
ϓϩδΣΫτཁһܭըΛߦͯͨ͠Β&. w ܦӦऀͱ։ൃऀͷதؒཧ৬Λͨ͠Β&. ԿΛͨ͠Β&.ͳͷʁ🤔
w ϝϯόʔϓϩμΫτͱϓϩδΣΫτΛ ͱ͓ͯ͠Ͱ͖͍ͯΔʁ w ݱͰͷ༷ʑͳղܾೳྗΛɺࣾձʹ͑Β Ε͍ͯΔʁ w ΤϯδχΞϦϯάྗΛഎܠʹϚωδϝϯτ Λߦ͢Δ ৫ݱͰͷڱؒʹ͋Δ
91ࡇΓجௐߨԋΑΓ 5BLFTIJ,BLFEB
ΤϯδχΞϦϯάͱԿͰ͔͢ʁ
ΤϯδχΞϦϯάͱԿͰ͔͢ʁ ୭͕͍ͬͯۙ݁ՌΛ ग़ͤΔΑ͏ʹ͢ΔΈ
ΤϯδχΞϦϯάͱԿͰ͔͢ʁ ٕܳ ୭͕͍ͬͯۙ݁ՌΛ ग़ͤΔΑ͏ʹ͢ΔΈ !LBNJQP
w ࣄۀࣄۀ෦TPNFUIJOHFMTFΛ୳͢ w ച্ɺӦۀɺ࠾༻ɺҭɺΩϟϦΞͳͲ՝ࢁ w ΤϯδχΞ৫ͷ՝Λදग़ͤͨ͞ઌͷ ΤϯδχΞϦϯάύʔτΛओ୲ͰϚωδϝϯτ ܦӦϚωʔδϟͷTPNFUIJOHFMTFͨΕ େࣄͳͷ ܦӦϚωʔδϟͱͷೋਓࡾ٭
ձࣾͷൟӫͱࣾһશһͷ͕ৗʹҰக͢Δ ܦӦΛߦ͏ɻ গਫ਼ӶओٛΛ؏͘ϢχʔΫͳूஂΛࢦ͠ɺ ιϑτΣΞ։ൃΛ௨͡ɺࣾձʹߩݙ͢Δɻ ΛॏΜ͡ɺνʔϜϓϨʔΛத৺ʹߴೳɾ ߴརӹΛ͋͛ɺ৴༻ͷ૿େΛਤΔɻ ࣾੋ
ࣾੋʹج͍ͮͯܦӦํΛ࠶֬ೝͯ͠Έ·͠ΐ͏
ٕܳΛ࣋ͬͯ ٕܳूஂͷ৫͕࣋ͭ ࣝΛߦಈʹ۩ମԽ͢Δ IUUQTUXJUUFSDPNNPSJNPSJIPHFTUBUVT ͜Εࢲͷ&.Ͱ͕͢ɺ ͦΕͧΕ͕ߟ͑ग़ͯ࣋ͯ͠Δͱྑ͍Ͱ͢Ͷ ΤϯδχΞϦϯά
ࣗݾհ
@koic w044ϓϩάϥϚʔ w3VCP$PQίΞνʔϜ wגࣜձࣾӬγεςϜϚωδϝϯτ &4. *OD ΤϯδχΞϦϯάϚωʔδϟʔ σΟεςΟϯάΠογϡυΤϯδχΞ w݄த్ೖࣾ
Ӭ
ࣗݾհςϯϓϨʔτ w໊લ wॴଐ෦ॺ w͜Ε·ͰͲͷΑ͏ͳࣄΛ͖͍ͯͯ͠Δ͔ʁ wιϑτΣΞ։ൃͰ͖ͳ͜ͱɺಘҙͳ͜ͱ w͜ͷηϛφʔͰ࣋ͪؼΓ͍ͨ͜ͱ
ࣄۀ෦հ
ΞδϟΠϧࣄۀ෦ wҎ্ɺ3VCZͱΞδϟΠϧιϑτΣΞ։ൃΛ࣮ ફ͓ͯ͠Γɺ8FC %#ΞϓϦ։ൃத৺ wΦϒδΣΫτ۞ָ෦͔࣌ΒίϛϡχςΟʹॏ͖Λ͓ ͍͍ͯΔ wͷؒͰաͷϝϯόʔ͕ೖΕସΘΓɺಉੈ த৺͔Βෳੈɺ৽ଔಉۀछస৬த৺͔Β ҟۀछస৬ͷ૿ՃͳͲͱมભ͍ͯ͠Δ
ࣄۀ෦հςϯϓϨʔτ w෦ॺͷಛʁ w෦ॺͷߏʁ άϧʔϓ੍ϝϯόʔͷಛ نͳͲ wͲΜͳ͓٬༷ͱࣄΛ͍ͯ͠Δʁ wͲΜͳٕज़Λ͓ͬͯࣄ͍ͯ͠Δʁ
ϚωδϝϯτλΠϓΛੳ͢Δ
ϚωδϝϯτΧςΰϦʔ IUUQTRJJUBDPNIJSPLJEBJDIJJUFNTCCDFGD
w ϓϩμΫτϚωδϝϯτ ϙΠϯτ w ϓϩδΣΫτϚωδϝϯτ ϙΠϯτ w ςΫϊϩδʔϚωδϝϯτ
ϙΠϯτ w ϐʔϓϧϚωδϝϯτ ϙΠϯτ ؔ৺߹͍ શϙΠϯτΛ͢Δ
ಉ͡ਓͰ࣌ʑͰมΘΔ ϓϩμΫτ ϓϩδΣΫτ ςΫϊϩδʔ ϐʔϓϧ ॎׂΓϝϯόʔ
0+5ҭ୲ νʔϜϝϯόʔ ιϩ ϓϩδΣΫτϦʔμʔ Ϧʔμʔҭ &. 044։ൃऀ ͓·͚ w Ͱ͖Δ͜ͱͱؔ৺ࣄผɻྫͰ͖ͳ͍͔Βؔ৺͕͋ΔɺΧϯετ͔ͨ͠Βؔ৺͕ബ͍ɺಘҙ͔ͩΒ৳͍ͨ͠ͳͲ w ϙΠϯτ͕͍͜ͱѱ͍͜ͱͰͳ͍ͷͰؾʹͤͣੳͯ͠Έ·͠ΐ͏
w ۀυϝΠϯʹͦΕ΄Ͳؔ৺ͳ͍͕ɺۀ υϝΠϯΛΒͳ͍ͱྑ͍ϓϩμΫτΛ ࡞Εͳ͍ͷͰɺސ٬ͷߟ͍͑ͯΔ͜ͱΛٕ ज़ͰղܾͰ͖ΔΑ͏ɺʮͳͥͦΕ͕ඞཁ ͔ʁʯʮͦͷՁԿ͔ʁʯͳͲຊ࣭ͷ ཧղΛΊΔΑ͏ߟ͍͑ͯΔ ϓϩμΫτϚωδϝϯτ ϙΠϯτ
w ͨͼͨͼԌ্Ҋ݅ʹग़ձ͖ͬͯͯɺͦΕ࣌ ؒɺ࣭ɺείʔϓɺίετͷނোͩͬͨ w ʮݟੵΓϛεʯͱʮະౚ݁ͷ༷ʯͱ͍͏େఢ w Ұׅܖͷ͓ॻ͖શ෦ߦͬͯɺϑΟʔυ όοΫશ෦ߦ͏ͱ͍͏ͷ։ൃऀͷਓੜΛ࣋ ͪग़͢͜ͱʹͳΔͷͰܖ͕ॏཁ ϓϩδΣΫτϚωδϝϯτ
ϙΠϯτ
w ࣾձ͔Βࣗʹظ͞Ε͍ͯͦ͏ͳࠜݯ w ۀྖҬಛԽܕͷ։ൃऀͰͳ͍ͷͰɺ ։ൃϓϩμΫτ͕มΘͬͯγϑτͰ͖Δ ٕज़ΛୈҰʹஔ͍͍ͯΔ w 044Λϕʔεʹٕͨ͠ज़Λબఆ͢ΔͨΊͷ ͦͷ044ίϛϡχςΟͷҰһͱͳΔ ςΫϊϩδʔϚωδϝϯτ
ϙΠϯτ
w ։ൃऀ͕ҰΛա͢͝தͰɺଟ͘ͷ͕࣌ؒϓ ϩμΫτ։ൃʹඅ͞ΕΔ w ۀ࣌ؒʹ͓͍ͯɺϓϩμΫτ։ൃΛ௨͡ ͯ։ൃऀͷΩϟϦΞ͕ܗ͞ΕΔͷͰɺϝϯ όʔ͕ͨͷ͘͠ΩϟϦΞΛੵΊ͍ͯΔ͔ʁ w ίϛϡχςΟͰྑ͍͚ͬͯ͘Δ͔ʁ ϐʔϓϧϚωδϝϯτ
ϙΠϯτ
ϋϯζΦϯͷώϯτ wϚωδϝϯτྖҬͷϙΠϯτΛͯ͠Έ·͠ΐ͏ wϓϩμΫτɺϓϩδΣΫτɺςΫϊϩδʔɺϐʔϓϧ wͲΜͳϚωδϝϯτྖҬʹऔΓΜͰ͖·͔ͨ͠ʁ wͲΜͳϚωδϝϯτྖҬʹؔ৺͕͋Γ·͔͢ʁ wಘҙͳϚωδϝϯτྖҬͰࣗຫͷΤϐιʔυ͕͋Ε ڭ͍͑ͯͩ͘͞ ࣗͷόϦϡʔͲΜͳʁ
ࣄۀ՝Կʁ
w ໊͕ͳ͍ͱṖͷൿີ݁ࣾײ w ্͍ͭ$.ΛଧͭΑ͏ͳେاۀͱ ҧ͏Զͨͪ w ྑ͍ࣄྑ͍ਓͱͷग़ձ͍ͷػձग़ w ୭ͱॏཁCZ!CFBLNBSL ͷ΄Ͳ͋Δ*5اۀ
ΞδϟΠϧࣄۀ෦ͷ՝ &.ண࣌ wྲྀग़ྲྀೖ wϛυϧͷԼ wςοΫΧϯύχʔͱͯ͠ͷࣾձతϓϨθϯε wϦϞʔτϫʔΫͷઌ һ૬ஊʁ wҭωοτϫʔΫ
TPNFUIJOHFMTF୳͠
ࢲ͔ΒΈͨΞδϟΠϧࣄۀ෦ wϝϯόʔͷ͜ͱ͕͖Ͱࡶஊܥͷձ͕͖ͳͷ Ͱɺ෩௨͠ͷྑ͞ҙࣝແҙࣝͰͰ͖Δ w͓٬༷ͷ͜ͱΛਅʹߟ͑ΒΕΔ͏͑Ͱɺࣄۀ෦ ϝϯόʔͷ͜ͱΛୈҰʹߟ͑ΒΕΔ wίϛϡχςΟͰϑϩϯτʹཱͭΑΓޙํࢧԉ wٕज़తͳ͜ͱࣗΑΓৄ͍͠ਓʹୗ͍ͨ͠ײ
ϋϯζΦϯͷώϯτ wTPNFUIJOHFMTFࣄۀ՝ࣄۀ෦ wࣄۀ෦Կ͕ಘҙͰԿ͕ۤखͦ͏ʁ wࣄۀ՝ʹରͯ͠ɺࣄۀ෦͚ͩͰख͕ಧ͍ ͍ͯͳͦ͞͏ͳ͜ͱԿʁ w͕ࣗಘҙͰࣄۀ෦͕ۤखͳ͜ͱԿʁ
ࣄۀ෦Ξοϓσʔτ
&.ʹͳ͍ͬͯͬͯΔ͜ͱ wύʔτλΠϜٕज़ސ ࢀըϓϩδΣΫτ͔Β wPO Ұ෦ɺࣄۀ෦!N@QJYZ͔ΒҾܧ w࠾༻࡞ઓڧԽ ॏ՝ɺҰ෦!N@QJYZ͔ΒҾܧ
wษڧձ ࠶์ૹɺಡॻձͷಓҊͳͲ wࣄۀͷࢪࡦݕ౼ɺௐɺൃ৴ͳͲ͋Ε͜Ε
ҭϞσϧͱ ࠾༻ϞσϧΛ ํཧ͢Δ
ࢢπϦʔͰͳ͍ IUUQTXXXBNB[PODPKQEQ9
ࣄۀ՝ πϦʔߏ ηϛϥςΟεߏ ҭϞσϧͷซ༻ ࣭ઌ໌֬ ੩త ͳҰํͰ ϝϯλʔͷಘҙྖҬʹґଘ͢Δ ҭମ੍Ϟσϧ ࣭ઌΛಈతʹܾΊΔ࿅͕ඞཁ͕ͩ
ಘҙ෦Λ࣋ͪدΔͷଟ͍ ҭମ੍Ϟσϧ
ϖΞϓϩάϥϛϯάίʔυϨϏϡʔ 91ࡇΓʰΦϯϥΠϯ࣌ͷϖΞϓϩάϥϛϯάʱΑΓ
ࣄۀ՝ πϦʔߏ ηϛϥςΟεߏ ҭϞσϧͷซ༻ πϦʔߏͷΘ͔Γ͢͞ ηϛϥςΟεߏͷܨ͕Γͷଟ͞ͷόϥϯεΛͱΔ ࣭ઌ໌֬ ੩త ͳҰํͰ ϝϯλʔͷಘҙྖҬʹґଘ͢Δ
ҭମ੍Ϟσϧ ࣭ઌΛಈతʹܾΊΔ࿅͕ඞཁ͕ͩ ಘҙ෦Λ࣋ͪدΔͷଟ͍ ҭମ੍Ϟσϧ
͜͏࣮ફ͢Δ͜ͱ͔Β͡ΊΑ͏ ʮຖ݄৽ϦϦʔε͠Α͏ʯ
None
None
ϦϦʔεྫ ؒΛ૿͢ػձ૿ͷग़
ະિ༗ͷΤϯδχΞืू࣌ 🗾wૉΒ͍͠ΤϯδχΞ શࠃͷίϛϡχςΟʹ͍Δ w࠾༻Ҏ্ʹӬͰΤϯδχ ΞΛଓΒΕΔػձग़ॏཁ wਓੜͷঢ়گʹ͋Θͤͨ ϥΠϑελΠϧΛଚॏ͢Δ
IUUQBHJMFFTNDPKQEPDTCVTJOFTT@QMBO@FTN@BHJMF@EJW@UIQEG ͢ΔίϛϡχςΟͱΤίγεςϜ ظࣄۀܭըॻΑΓ
ਓͱڥͷมԽ
IUUQKQSVCZJTUOFU3VCZ,BJHJ DQMVHJOQMVHJOBUUBDI@EPXOMPBEQ1SPHSBNpMF@OBNFUIF@JTMBOE@PG@SVCZ@KQEG 3VCZ,BJHJ %BWF5IPNBT
ϦϦʔεྫ OFXCJFίϛϡχςΟͱͷަྲྀ
w ͢Ͱʹ׆༂͍ͯ͠ΔΤϯδχΞͷʹ ݶΓ͕͋Δ w ͜Ε͔Β׆༂͠Α͏ͱ͍ͯ͠ΔΤϯδχΞ ͕ࠓޙͲͷΑ͏ʹ͍͔ͯ͘͠ະ w ۀքશମͰ͏·͍ͬͯ͘͘ඞཁ͕͋Δ ୣ͍͋͏ΑΓҭͪ͋͏ڥΛ
w OFXCJFͷ͜͜Ζ͕Θ͔ΔʹɺOFXCJFͷ ࠒͷؾ͕࣋ͪΧϥϑϧͳϝϯόʔ͕ྑ͍ w γχΞϝϯόʔͩͱ࣌ͷྲྀΕͰOFXCJFͷࠒ ͷ͜͜ΖΛΕͯ͠·͍ͬͯΔ෦͕͋Δ w γχΞ͕ࣗࢥ͍ͬͯΔΑΓ͍͢͝ਓͱ ͯ͠ݟΒΕΔ ϋʔτϑϧͳަྲྀΛͤΔ
ϦϦʔεྫ ࣾίϛϡχςΟͷܨ͕ΓΛ૿͢
w ࠾༻ॏཁ͚ͩΕͲɺ͍·Ұॹʹಇ͍͍ͯ Δϝϯόʔ࠷ॏཁ w ΦϯϥΠϯ࣌ʹͳͬͯɺϝϯόʔؒͷަ ྲྀͷΛҙਤతʹ࡞Βͳ͍ͱૄʹͳΓ͏Δ w ࣄۀ෦੍ʹͳ͍ͬͯΔ৫ͷࣄۀ͝ͱͷ ಛ৭ɺॴଐϝϯόʔͷಛ৭ͷू߹ ͍·͍Δϝϯόʔ͕࠷ॏཁ
ࣄۀ෦ʹͲΜͳ ࢪࡦΛఏҊͰ͖Δ ͔ߟ͑ͯΈ·͠ΐ͏
;Γ͔͑Γ
None
lιϑτΣΞਓ͕ ਓͷͨΊʹ࡞͍ͬͯΔ ,FOKJ)JSBOBCF ֤ʑͷࣄۀ෦ϝϯόʔً͕͚ΔܖػΛ POͳͲ͔ΒϏϧυΞοϓ͍͖ͯ͠·͠ΐ͏