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
SUZUKI Ryo
October 28, 2016
1
1.2k
フィードフォースのエンジニア組織デザイン
弊社の開発チーム体制がどのような考えに基づいているのか、社内勉強会で説明した資料です。
SUZUKI Ryo
October 28, 2016
Tweet
Share
More Decks by SUZUKI Ryo
See All by SUZUKI Ryo
英語の本をこんな風に読んでいます / My training in reading English
hapicky
0
460
フィードフォースにおけるManagement3.0的な取り組み
hapicky
0
390
フィードフォースのエンジニア環境
hapicky
0
260
20160318LT.pdf
hapicky
1
180
情報共有ツールお悩みNight #2 LT資料
hapicky
8
4.2k
マネジメントの仕事を図で説明してみる
hapicky
1
450
Self introduction 2014
hapicky
1
230
Let's マシュマロチャレンジ!
hapicky
0
960
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Site-Speed That Sticks
csswizardry
2
190
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Designing for Performance
lara
604
68k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Code Reviewing Like a Champion
maltzj
520
39k
For a Future-Friendly Web
brad_frost
175
9.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Transcript
ΤϯδχΞ৫σβΠϯ ɹ 2016/10/28 feedforceࣾษڧձ Ryo Suzuki(@hapicky)
ຊͷझࢫ » ݱࡏͷΤϯδχΞ৫ମ੍͕ͲͷΑ͏ͳߟ͑ʹج͍ͮ ͍ͯΔ͔ͬͯΒ͏ ܅ࠓ͔ΒϚωʔδϟʔ » ՝Λڞ༗͠ɺࠓޙʹ͚ͨҙݟΛืΔ » ᝦϑΟʔυόοΫେܴ »
͜ͷϙΠϯτ͕ͨΊʹͳͬͨ » ͬͱҧ͏/ͬͱৄ͘͠ฉ͖͍ͨ » ͬͱ͜͏ͨ͠ํ͕Α͘Ͷʁetc
͢ਓ » CTO » not founder » 20121݄͔ΒΤϯδχΞΛ౷ׅ » ೝఆεΫϥϜϚελʔ(expired)
» ৫ɺਓؒɺνʔϜɺϑΝγϦςʔγϣϯ͕
ϑΟʔυϑΥʔεʹ͍ͭͯ » https://www.feedforce.jp/ » ϚʔέςΟϯάؔ࿈ͷSaaS։ൃ/ఏڙ(BtoB) » ࣄۀυϝΠϯ͕ҟͳΔෳͷϓϩμΫτΛల։ » ʹ1,2݅ͷ৽نϓϩμΫτ։ൃ »
10ͷྺ࢙Λ࣋ͭϓϩμΫτ
৫σβΠϯͱ
৫σβΠϯͱ ܉ࣄ৫Ͱ͋Ζ͏ͱɺاۀ৫Ͱ͋Ζ͏ͱɺ৫ͱݺ ΕΔͷͷಛɺجຊతʹۀͱௐͷೋͭͰ͋Δɺ ͱຊॻͰߟ͍͑ͯΔɻ (1) ۀ: ׂ͕͚ΒΕɺͦΕͧΕͷׂΛ͚Δ͜ͱ Ͱɺͨͱ͑ઐੑΛൃشͤ͞ΔͳͲɺԿΒ͔ͷϝϦο τΛٻ͍ͯ͠Δ (2)
ௐ: ۀͷҰ෦ͣͭΛ୲͍ͬͯΔਓʑͷ׆ಈ͕ɺ࣌ ؒతɾۭؒతʹௐ͞Εɺଟͷਓʑͷ׆ಈ͕ɺ͔͋ͨ ҰͭͷશମͰ͋Δ͔ͷΑ͏ʹ࿈ಈͯ͠ಈ͘Α͏ʹͳͬ ͍ͯΔ(͋Δ͍ɺͦ͏ͳΖ͏ͱྗ͍ͯ͠Δ)
৫σβΠϯͱ ʮ৫Λઃܭ͢Δʯͱ͍͏࡞ۀɺۀΛઃܭ͠ɺਓʑ ͷ׆ಈ͕࣌ؒతɾۭؒతʹௐ͞ΕͨͷʹͳΔΑ͏ͳ Λࢪ͢͜ͱ Ͱ͋ΓɺͦͷΑ͏ʹͯ͠ग़དྷ্͕ͬͨ ۀͱௐखஈͷύλʔϯ͕৫σβΠϯͳͷͰ͋Δɻ — ʰ৫σβΠϯʱp.16
৫σβΠϯͱ » ͲΜͳ৫Ͱ͋ͬͯنͷ֦େࣄۀͷ૿ՃʹΑΓ ۀͷඞཁੑ͕ߴ·Δ » ۀͷํʹ͍Ζ͍Ζ͋Δ͕ɺͦΕͧΕʹϝϦο τ/σϝϦοτ͕͋Δ » ۀ୲౷߹͢ΔͨΊͷʮௐʯൃੜͤ͞Δ »
͏·͘ۀΛઃܭ͢Δ͜ͱͰʮࣗવͱௐ͞ΕΔʯ ʮશମͱͯ͠ྑ͍݁Ռʹͭͳ͕Γ͍͢ʯঢ়ଶΛ࡞Γ ग़ͤΔͱߟ͍͑ͯΔ
ΤϯδχΞ৫ͱ ࣮ͯ͠ݱ͍ͨ͜͠ͱ
ΤϯδχΞ৫ͱ࣮ͯ͠ݱ͍ͨ͜͠ͱ (اۀͱͯ͠) » ϏδωεཁٻΛεϐʔσΟʹ࣮ݱ͢Δ͜ͱ » ͷࢄ(ෳϓϩμΫτల։) » ࣋ଓՄೳੑͷ֬อ
ΤϯδχΞ৫ͱ࣮ͯ͠ݱ͍ͨ͜͠ͱ (ཧ೦ͱͯ͠) » ʮಘҙͳ͜ͱ͕׆͖ۤखͳ͜ͱ͕ද໘Խ͠ͳ͍ʯ( ఱಊݩࣾؠా૱ࢯ) » HOBO NIKKAN ITOI SHINBUN
- 1101.com » ΤϯδχΞݸʑਓֶ͕ͼଓ͚ΒΕΔɺ৫ͱֶͯ͠ͼ ͕ڞ༗͞ΕΔڥ(ֶश͢Δ৫ɺڠௐֶश) » ਓؒͰͳ͘γεςϜ(Έ)ʹ͢Δ(γεςϜ ࢥߟͷߟ͑ํ)
͜͏͍ͬͨ͜ͱ͕࣮ݱ͞ΕΔ ৫ΛσβΠϯ͍ͨ͠
͜͜·Ͱલஔ͖
ϑΟʔυϑΥʔεΤϯδχΞ͕ ܦݧ͖ͯͨ͠ۀͷύλʔϯ
1. ฒྻۀ » ಉ͡ྨͷࣄΛෳͷ୲ ऀʹಉ࣌ฒߦͯ͠ਐΊͯ Β͏͜ͱ » ͋ΔϓϩμΫτ͕ओྗͩͬ ͨࠒɺ΄ͱΜͲͷΤϯδχ Ξ͕1ਓ1ϓϩδΣΫτ୲
͍ͯͨ͠ » 1ϓϩδΣΫτͷظؒ 1ϲ݄ఔ » ࠷େͰ6,7ਓ΄Ͳ
1. ฒྻۀ » ϝϦοτ » ฒྻ࣮ߦ͕࠷େʹ » σϝϦοτ » ݸਓͷೳྗ͕ϓϩδΣ
Ϋτͷ൱ʹ݁͢Δ » ݁Ռͱͯ͠શһʹಉ͡ Α͏ͳೳྗಛੑ͕ظ ͞ΕΔ » ڠௐֶशͷػձ͕ൃੜ ͠ʹ͍͘
2. ػೳผۀ » શମʹରͯ͠Ռͨ͢ػೳʹ Ԡͨ͡ۀ » ՌΛ౷߹͠ͳ͚Εશମ ͕Ͱ͖͕͋Βͳ͍ » ྫ:
ΞϓϦ/ΠϯϑϥͰผ ৫
2. ػೳผۀ » ϝϦοτ » ػೳผʹઐੑͷڞ ༗/ٻ͕༰қ » σϝϦοτ »
ௐϘτϧωοΫ͕ ൃੜ͍͢͠ » ݸผ࠷దʹؕΓ͍͢ » ܦҢతͷڞ༗ෆ » Λ֎෦ʹٻΊ͕ͪ
3. ػೳԣஅ৫ ʮػೳԣஅతͰ͋ΔɻΠϯΫ ϦϝϯτΛ࡞͢ΔεΩϧΛ νʔϜͱͯͯ͢͠උ͍͑ͯ Δɻ(։ൃνʔϜͷಛ)ʯ » εΫϥϜΨΠυ ʮνʔϜҎ֎ʹཔΒͣʹ࡞ۀ Λ͛͠ΔೳྗΛ͍࣋ͬͯ
Δɻʯ » ʮεΫϥϜ࣮ફೖʯ
3. ػೳԣஅ৫ » νʔϜ֎ͱͷௐ͕ى͖ͳ ͍ͷͰʮ࡞ۀͷखͪʯͷ ൃੜΛ͑ΒΕΔ » νʔϜ͕ࣗײ(Φʔ φʔγοϓ)Λ͍࣋ͪ͢ »
ଞਓʹͬͯΒͬͨ ͜ͱʹΛ࣋ͪʹ ͍͘ͷ
ྺ࢙ » ฒߦۀ(1ਓ1ϓϩδΣΫτ) » ػೳผۀ(ΞϓϦͱΠϯϑϥ͕ผ) » ػೳԣஅ৫ ͱ͍͏ܦҢΛܦͯɺݱࡏϓϩμΫτຖʹػೳԣஅతͳ ։ൃνʔϜΛἧ͍͑ͯΔɻ
ͪͳΈʹ ʮ৫ͱɺͦͷϏδωεϞσϧͰ࠷େݶʹޮՌ͕ग़Δ Α͏ʹ࠷దԽ͞Ε͍ͯΔʯ » ৫มֵͷ͠͞ͱฒΈΛἧ͑ͳ͍ਐΊํ | Social Change!
ϏδωεϞσϧͱ৫ » ৫ʹͲΜͳಇ͖͕ظ͞ΕΔ͔ʁϏδωεϞσϧ ʹେ͖͘نఆ͞ΕΔ » ͳͷͰ୯ʹཧతͳ৫Λ͍ٻΊΔͷʮͪΐͬ ͱҧ͏ʯͱߟ͍͑ͯΔ » ͠ʮ͜Μͳ৫͕ཧ!ʯͱ͍͏ڧ͍͍͕͋Δͷ Ͱ͋ΕɺͦΕʹ߹͏ϏδωεϞσϧϚωδϝϯτ
Λબ͢Δ/ม͍͑ͯ͘ඞཁ͕͋Δ(ͪΖΜͦΕ͕ଥ Ͱ͋ΔલఏͰ)
[ิ] ʮۀʯ͕ࢦࣔ͢͠ͷ ৫(୭ͱۀ͍ͯ͠Δ/ڠۀ͍ͯ͠Δ)ʹݟ͑ͳ͍ɻ ͔͠͠ҎԼͷͷ͔Βݸʑਓͷҙࣝͱͯ͠࡞ΒΕΔɻ » ৫ਤ(ݖݶࢦࣔܥ౷) » ۀʹ͓͚Δڠௐ/࿈ܞؔ » ԿΛҰॹʹऔΓΉͷ͔
» ใ࣌ؒɺۭؒͷڞ༗/ִͨΓ
ڠۀΛҙࣝͤ͞ΔͨΊͷπʔϧ
ͦͷଞͷऔΓΈ
1. ࣾίϛϡχςΟ׆ಈ » ϑϩϯτΤϯυΤϯδχΞɺΠϯϑϥΤϯδχΞɺ AWSΦϯϥΠϯηϛφʔΛݟΔձͳͲ » ॴଐ͢ΔϓϩμΫτνʔϜʹؔΘΒͣɺઐࣝΛڞ ༗͢ΔͨΊͷू·Γ » ػೳผ৫Λબ͍ͯ͠ͳ͍σϝϦοτΛ؇͢Δޮ
Ռ͋Γ
2. 1νʔϜ1ϓϩμΫτΦʔφʔݪଇ » 1νʔϜʹෳͷϓϩμΫτΛ୲ͯ͠Β͏߹͕ ͋Δ » ͦΕ·͍͜͠ͱͰͳ͍͕ɺ͞ΒʹϓϩμΫτ Φʔφʔผਓͩͱௐසൃͷݩ » ෳϓϩμΫτΛ୲͢Δ߹ͰɺϓϩμΫτΦʔ
φʔ1ਓʹݶఆ͍ͨ͠
3. νʔϜ3ਓҎ্ ʮ։ൃνʔϜͷϝϯόʔ͕ 3 ਓະຬͷ߹ɺ૬ޓ࡞ ༻͕গͳ͘ɺੜ࢈ੑͷ্ʹͭͳ͕Βͳ͍ɻʯ (εΫϥϜΨΠυΑΓ) » 2ਓׂͷݻఆԽҙݟͷিಥ͕ʹͳΓ͍͢ »
3ਓ͍Δ͜ͱͰհऀ/ϑΝγϦςʔλʔ͕ൃੜͯ͠ ࣗવͱεϜʔζʹͳΔ(͜ͱΛظ͍ͯ͠Δ) » εΫϥϜʹ3ͭͷϩʔϧ͕ଘࡏ͢Δ͜ͱಉ͡എܠ͔
4. όϦϡʔνΣʔϯΛҙࣝ
4-1. αϙʔτ/ӡ༻վળΤϯδχΞ » Ұ෦ͷϓϩμΫτͰΤϯδχΞ͕։ൃ()͚ͩͰ ͳ͘ೲ(ྲྀ௨)ʹؔΘΔඞཁ͕͋ͬͨ » ೲ࡞ۀׂΓࠐΈ࡞ۀͱͳΓɺ։ൃͷԆϞν ϕʔγϣϯԼͷݪҼʹ » ೲ࡞ۀʹదੑͷ͋ΔΤϯδχΞΛαϙʔτ/ӡ༻վ
ળΤϯδχΞͱͯ͠Γग़͢͜ͱͰׂΓࠐΈϞν ϕʔγϣϯԼΛղফͤͨ͞
4-2. ࣾITࢧԉϦιʔεΛ੍ݶ » ࣾͷITࢧԉ(ITௐୡωοτϫʔΫཧ)Τϯδχ Ξ͕ؔ༩͍ͯ͠Δ » ҎલΠϯϑϥΤϯδχΞશһͰؔ༩͍͕ͯͨ͠ɺओ ׆ಈͨΔϓϩμΫτ։ൃΛԆͤ͞Δ͜ͱ » ୲ऀΛݶఆͯ͠ओ׆ಈͷӨڹΛݮΒ͢͜ͱʹͨ͠
» ࢧԉ׆ಈͰʮͪʯΛൃੜͤ͞Δ͕ɺࠓओ׆ಈͷ ํ͕ॏཁͱ͍͏ߟ͑(τϨʔυΦϑ)
5. ։ൃج൫νʔϜ » ϓϩμΫτ։ൃνʔϜͱผͷಠཱͨ͠νʔϜͱͯ͠ ൃ » @masutakaΛൈṅ » ֤ϓϩμΫτ։ൃνʔϜʹدΓఴ͍ɺϩά/σʔλج ൫ͷߏஙܧଓతΞοϓσʔτͷ࣮ݱΛࢧԉ
» ࠓΠϯϑϥΤϯδχΞશһΛަ͑ͯϛʔςΟϯά͠ ͍ͯΔ͕ɺ͜Εݟ͍͖͍ͯͨ͠(ޙड़)
ݱࡏͷঢ়گ
ݱࡏͷঢ়گ » ϓϩμΫτຖʹػೳԣஅత νʔϜΛ݁ » ։ൃج൫νʔϜ͕ϓϩμΫ τνʔϜΛࢧԉ » ࣾίϛϡχςΟͰઐ ࣝΛڞ༗
» αϙʔτ/ӡ༻վળνʔϜ (Րน) » ଐCTO͕ຊਓͷرͱ શମ࠷దΛߟྀܾͯ͠ఆ
ࠓޙͷऔΓΈ
ίΞνʔϜ/νʔϜ ίϯαϧλϯτ੍
ίΞνʔϜ/νʔϜίϯαϧλϯτ » ʰεΫϥϜݱΨΠυʱͰհ͞Ε͍ͯΔʮνʔϜͷ ੜ࢈ੑΛ࠷దԽ͢ΔʯͨΊͷΞϓϩʔν » ͜ͷߟ͑ํͷҙࣝ » ձࣾͷͯ͢ΛػೳԣஅతͳઐνʔϜʹͰ͖Δ ΄Ͳ։ൃऀ͕ἧ͍ͬͯͳ͍ »
৭ΜͳνʔϜ͔ΒҾͬுΓͩ͜ͳϝϯόʔ͕͍Δ » νʔϜϓϩμΫτΑΓٕज़ʹϑΥʔΧεͨ͠ ͍։ൃऀ͍Δ
ίΞνʔϜ/νʔϜίϯαϧλϯτ » ղܾࡦ » ٕज़ࢤͰ͋ͬͨΓɺ৭ΜͳνʔϜͰྗΛൃش͠ ͯཉ͍͠։ൃऀΛʮνʔϜίϯαϧλϯτʯͱఆ ٛ͠ɺϓϩμΫτ։ൃνʔϜ(ίΞνʔϜ)ͱͷؔ ΘΓํΛఆٛ͢Δ͜ͱͰੜ࢈ੑΛߴΊΔ
ίΞνʔϜͷఆٛ ʮϓϩδΣΫτʹϑϧλΠϜͰࢀՃ͢ΔϝϯόʔͰߏ ͢ΔɻίΞνʔϜͷϝϯόʔϓϩμΫτͷʹڞಉ ͯ͠Λ࣋ͭɻϓϩδΣΫτ1͚ͭͩʹϑϧλΠϜͰί ϛοτ͢ΔػೳԣஅνʔϜͰ͋Γɺ࡞ۀΛΓସ͑ͨΓ ϚϧνλεΫͨ͠Γ͠ͳ͍ɻʯ
νʔϜίϯαϧλϯτͷఆٛ ʮνʔϜίϯαϧλϯτɺձࣾͷதʹ͍ͯɺνʔϜͱ ϓϩδΣΫτͰΒͳ͍εΩϧΛຒΊͯ͘ΕΔɻ νʔϜίϯαϧλϯτίΞνʔϜϝϯόʔͰͳ͍ɻ νʔϜʹଐ͞ͳ͍ͱݴ͍͍ͬͯɻձࣾ෦ͷʮ༭ ฌʯͱͯ͠ɺࣗͷઐੑΛνʔϜʹചΔͱ͍͏αʔϏ εΛఏڙ͢ΔΜͩɻʯ
͜ͷߟ͑ํͷ؊ » ͕ࣗίΞνʔϜ/νʔϜίϯαϧλϯτͲͪΒΛબ Ϳ͖͔ຊਓ͕Ұ൪Α͍ͬͯ͘Δ(ࢤੑͷ) » ։ൃͷओମ͋͘·ͰίΞνʔϜ » ϓϩμΫτΦʔφʔγοϓͷඞཁੑ » νʔϜίϯαϧλϯτͱͯ͠ظ͞ΕΔಇ͖ํΛ໌ࣔ
͢Δ » ୯ʹٕज़ྗ͕͋Ε͍͍Θ͚Ͱͳ͘ɺίΞνʔ ϜϓϩμΫτʹ͔ͬ͠ΓՁΛఏڙ͢Δ
͜ͷߟ͑ํʹظ͢Δ͜ͱ » ٕज़ࢤͳϝϯόʔ͕ΑΓॊೈʹ׆༂Ͱ͖ΔΑ͏ʹͳ Δ͜ͱ » ίΞνʔϜͷϓϩμΫτΦʔφʔγοϓ͕ਐΈɺεΩ ϧशಘ͕Ճ͢Δ͜ͱ » ಛʹϑϩϯτΤϯυɺΠϯϑϥ෦
ࠓޙͷਐΊํ » ֤ϝϯόʔʹίΞνʔϜ/νʔϜίϯαϧλϯτͲͪ ΒΛࢤ͢Δͷ͔ώΞϦϯά » ώΞϦϯά݁ՌΛड͚ͯίΞνʔϜͷฤΛม͑Δ͜ ͱ͋Γ͏Δ » ج൫νʔϜΛνʔϜίϯαϧλϯτूஂͱͯ͠࠶ఆٛ
·ͱΊ
·ͱΊ » ϓϩμΫτ͝ͱʹػೳԣஅνʔϜΛߏ͠ɺదͳ ͷࢄڠௐ͕࣮ؔݱ͞Ε͖ͯͨ » Ϗδωε͕͠ɺ༏लͳΤϯδχΞ͕ू·Γ/ ҭ͖͔ͬͯͨΒͦ͜ » ίΞνʔϜ/νʔϜίϯαϧλϯτ੍ͷಋೖͰɺ͞Β ʹݸʑਓͷڧΈ͕׆͖Δ։ൃମ੍Λਪਐ͍ͨ͠
ࢀߟจݙ » ৫σβΠϯ (ܦจݿ) : প্ װ » εΫϥϜΨΠυ »
εΫϥϜݱΨΠυ | Mitch Lacey, ҆Ҫ ྗ, ۙ౻ ت, ݪా ٍ » Τοηϯγϟϧ εΫϥϜ: Kenneth Rubin, Ԭᖒ ༟ ೋ, ֯ య, ߴ ਖ਼߂, ஐ ӈܡ » ৫ύλʔϯ | James O. Coplien, Neil B.Harrison, ஐ ӈܡ