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
クックパッドの "体系的" サービス開発 / "Systematic" service dev...
Search
Kohei Arai
February 11, 2018
How-to & DIY
5
2.8k
クックパッドの "体系的" サービス開発 / "Systematic" service development at cookpad
Cookpad TechConf 2018 の登壇資料です。
社内での開発サイクルの回し方や、注意しているポイントについてお話しました
Kohei Arai
February 11, 2018
Tweet
Share
More Decks by Kohei Arai
See All by Kohei Arai
Service development lecture in 2019 cookpad summer internship
spicycoffee
3
14k
サービス開発者コミュニティを開発している話(@北大 2019.1)
spicycoffee
0
120
サービス開発者コミュニティを開発している話 / Develop service developers community
spicycoffee
1
520
ユーザーインタビューを開発プロセスに "馴染ませる" / How to "fit" user interviews to development process
spicycoffee
1
1.3k
Service development lecture in 2018 summer internship - 10 Day Tech for service engineers -
spicycoffee
1
9.8k
AB テストの落とし穴 / "Pitfalls" of AB test
spicycoffee
0
570
Other Decks in How-to & DIY
See All in How-to & DIY
チームビルディングを受けてみた
harukahosokawa
2
150
Dirbtinis intelektas dizainerio gyvenime
lekevicius
0
230
BlueTeamer勉強会 Security Onion編 激闘!Importノード
disconinja
1
230
音に負けない!子どもが騒いでいる脇でも快適オンラインMTGの秘伝
kaitou
0
370
#スタックチャン「魔改造の夜」に行く
syumme01
1
210
Learning from Firefighters
ksatirli
PRO
0
170
わたしと仕事とアジャイルコミュニティ / developers summit 2025
matsuoshi
0
930
How to create better speaker proposals
logico_jp
2
770
JAWS-UGとAWS - JAWS-UG彩の国埼玉設立のお祝い
awsjcpm
2
170
Terra Charge|急速充電器ご利用ガイドブック / Terra Charge Fast Charger Guidebook
contents
1
240
雑にコミュニティを続けてもいいと思っている/Feel free to continue the community
camel_404
0
180
電気工事士を取ったら一瞬で元が取れた件
bicstone
3
5.8k
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
What's in a price? How to price your products and services
michaelherold
245
12k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Code Review Best Practice
trishagee
67
18k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Gamification - CAS2011
davidbonilla
81
5.2k
Transcript
৽Ҫ ߁ฏ ձһࣄۀ෦ ΤϯδχΞ ΫοΫύουͷ “ମܥత” αʔϏε։ൃ
ࣗݾհ 2 ৽Ҫ ߁ฏ @SpicyCoffee66 ɾ2017 ৽ଔೖࣾ ΤϯδχΞ ɾαʔϏε։ൃ෦ ͕͢͞νʔϜଐ
ɹ* ݕূͷΈཱ͔ͯΒ࣮ɾੳ·Ͱ ɹ* cookpad studio ͷ ɹ αʔόʔαΠυϝΠϯΤϯδχΞ ɾࠓظ͔Βձһࣄۀ෦ଐ ɾRails, SQL
ຊͷओ ΫοΫύουͰ ͲͷΑ͏ʹ։ൃαΠΫϧΛճ͍ͯ͠Δ͔ 3
αʔϏε։ൃ͍͠ 4
αʔϏε։ൃͷ͠͞ ɾϢʔβʔͷ࣋ͭཉٻɺຊਓΛؚΊͯ୭ʹΘ͔Βͳ͍ ɾϢʔβʔͷ࣋ͭཉٻɺ࣌ؒͱͱʹมΘ͍ͬͯ͘ 5 ΰʔϧ͕Θ͔Βͳ͍ ࠓ͍Δॴ͕Θ͔Βͳ͍ ɾ։ൃऀࣗͷαʔϏεΛਖ਼͘͠ཧղͰ͖͍ͯͳ͍
αʔϏε։ൃͷ͠͞ 6 ΰʔϧ͕نఆͰ͖Δ ઃܭ ΰʔϧ͕نఆͰ͖ͳ͍ αʔϏε։ൃ
αʔϏε։ൃͷ͠͞ 7 ΰʔϧ͕نఆͰ͖ͳ͍ αʔϏε։ൃ ։ൃαΠΫϧ ֶͼͷαΠΫϧ ԾઆΛཱͯͯ ࣮ߦͯ͠ ϢʔβʔͷԠΛݟΔ
ֶͼͷαΠΫϧ 8 BML ϧʔϓ Measure Learn product idea data Build
Ծઆ͔ΒϓϩμΫτʹ ϓϩμΫτ͔Βσʔλʹ σʔλ͔Β Ծઆʹ
ֶͼͷαΠΫϧ ʙཧʙ 9 BML ϧʔϓ Measure Learn product idea data
Build ࠷Ͱ࠷খͷ ϓϩμΫτ A/B ςετͰޮՌଌఆ ৫ʹ ݟڞ༗
ֶͼͷαΠΫϧ ʙݱ࣮ʙ 10 BML ϧʔϓ Measure Learn product idea data
Build ͍͍ͩͨ ͲͷϑΣʔζͰ ࣦഊ͢Δ
Case: 1 11
ֶͼͷαΠΫϧࣦഊྫ 12 Push ௨ͬͯͲͷ͘Β͍ޮՌ͕͋Δͷ͔Γ͍ͨ ࣮ͯ͠ݕূͯ͠Έ·͠ΐ͏ Push ௨ͷޮՌ͕Γ͍ͨ Push ௨ͷ࣮ ʹ
ֶͼͷαΠΫϧࣦഊྫ 13 Ͳ͏ͤͳΒը૾͚͍ͭͨͰ͢Ͷ Push ௨ͷޮՌ͕Γ͍ͨ Push ௨ͷ࣮ ≦ Push ௨ʹը૾
ֶͼͷαΠΫϧࣦഊྫ 14 Ϩγϐ͕Ϧίϝϯυग़དྷΔΑ͏ʹͳΓ·ͨ͠ʂ ͦͷػೳͤ·͠ΐ͏ʂ Push ௨ͷޮՌ͕Γ͍ͨ Push ௨ͷ࣮ < Push
௨ʹը૾ Ϧίϝϯυػೳ
ֶͼͷαΠΫϧࣦഊྫ 15 Push ௨ͷޮՌ͕Γ͍ͨ Push ௨ͷ࣮ <<< Push ௨ʹը૾ Ϧίϝϯυػೳ
͡Ό͋ઐ༻ͷ LP ࡞Γ·͠ΐ͏ʂʂʂ ઐ༻ LP !ʁʁʁ
ֶͼͷαΠΫϧࣦഊྫ 16 Build ͷࣦഊ ɾϓϩμΫτ͕ෆඞཁʹେ͖͘ͳ࣮ͬͯʹ͕͔͔࣌ؒΔ ɾݕূ͍ͨ͠Ծઆͱͨ͠ϓϩμΫτͷػೳ͕טΈ߹͍ͬͯͳ͍ ɾͦͦԾઆʹߟྀ࿙Ε͕͋Δ
Case: 2 17
ֶͼͷαΠΫϧࣦഊྫ 18 ػೳͷ࣮ ϩάຒ·ͬͯ ͳ͔ͬͨʂʂʂ
ֶͼͷαΠΫϧࣦഊྫ 19 Measure ͷࣦഊ ɾ͍͟ܭଌ͠Α͏ͱ͢Δͱϩά͕ຒ·͍ͬͯͳ͍ ɾෳͷ A/B ςετ͕িಥͯ͠ܭଌ݁ՌʹӨڹ͕ग़Δ ɾूܭ SQL
ʹؒҧ͍͕͋Γɺ࠷ѱͷ߹ͦΕʹؾ͕͔ͭͳ͍
Case: 3 20
ֶͼͷαΠΫϧࣦഊྫ 21 TOP ͷόφʔΛม͑ͯೖձ͕ ◦◦% ૿͑·ͨ͠ʂ ʂʂʂ ͦΕ……ଟ͍ΜͰ͠ΐ͏͔ʁ Ͳ͏ͳΜͰ͠ΐ͏…… ·͊ࣈ্͕ͬͯΔ͠࠾༻͠·͔͢……
ֶͼͷαΠΫϧࣦഊྫ 22 Learn ͷࣦഊ ɾग़͖ͯͨࣈΛͲ͏ղऍ͢Ε͍͍͔ΠϚΠνΘ͔Βͳ͍ ɾࣈಈֶ͍͕ͨͼΛಘΒΕ͔ͨͱݴΘΕΔͱͦ͏Ͱͳ͍ ɾಘΒΕͨݟ͕ଐਓతʹͳΔɺ͋Δ͍ҋʹফ͑Δ
͜͏ͳΒͳ͍ͨΊʹ 23
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτ 24 લ͔Βॱ൪ʹΖ͏ͱ͠ͳ͍
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτ 25 લ͔Βॱ൪ʹΖ͏ͱ͠ͳ͍ खΓͷࢭ ޮతͳֶͼ
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτ 26 લ͔Βॱ൪ʹΖ͏ͱ͠ͳ͍ ɾஞ࣍తʹΖ͏ͱ͢Δͱɺ݁ߏେ͖ͳखΓʹܨ͕Δ ɾલͷϑΣʔζ͕ऴΘͬͯͳͯ࣍͘ͷϑΣʔζͷ͜ͱߟ͑ΒΕΔ ɾֶͼͷαΠΫϧࣗମΛҰͭͷϓϩδΣΫτͱߟ͑Δͱ ɹΉ͠Ζ࠷ॳʹαΠΫϧશମΛઃܭ͢Δ͖ खΓͷࢭ
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτ 27 લ͔Βॱ൪ʹΖ͏ͱ͠ͳ͍ Measure product Build idea data ɾϩά͕Γͳ͍ ɾͲ͏͍͏Λ
ɹܭଌ͢Δͷ͔ෆ໌ྎ खΓͷࢭ
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτ 28 લ͔Βॱ൪ʹΖ͏ͱ͠ͳ͍ Measure product Build Learn idea data ɾࣈͷղऍ͕Θ͔Βͳ͍
ɾͲͷͰࢪࡦΛ ɹධՁ͢Δ͔ܾ·ͬͯͳ͍ खΓͷࢭ
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτ 29 લ͔Βॱ൪ʹΖ͏ͱ͠ͳ͍ Measure product Build Learn data idea ԾઆΛཱͯΔஈ֊Ͱ
αΠΫϧͷઌʹؔ͢Δ͜ͱ ܾΊΕΔͷܾΊͯ͠·͏ खΓͷࢭ Measure product Build Learn data
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτ 30 αʔϏεʹର͢Δཧղ ݱ࣮ ֶͼ લ͔Βॱ൪ʹΖ͏ͱ͠ͳ͍ ޮతͳֶͼ
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτ 31 αʔϏεʹର͢Δཧղ ݱ࣮ ֶͼ ࢪࡦ݁Ռͷ༧ ࢪࡦͷ݁Ռ ࢥͬͨΑΓ ྑ͍ /
ѱ͍ ͦΕͳ͔ͥʁ લ͔Βॱ൪ʹΖ͏ͱ͠ͳ͍ ޮతͳֶͼ
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτ 33 αʔϏεʹର͢Δཧղ ݱ࣮ ࢪࡦ݁Ռͷ༧ ࢪࡦͷ݁Ռ લ͔Βॱ൪ʹΖ͏ͱ͠ͳ͍ ޮతͳֶͼ
֤ϑΣʔζͷઃܭ 34
֤ϑΣʔζͷઃܭ ʙBuildʙ 35 Build ʹ͍ͭͯલ͓ͬͯͬͯ͘͜ͱ ɾઈରʹݕূ͍ͨ͠Ծઆͷ໌֬Խ ɾݕূഎܠͷཧ ɾݕূ༰ɾҙͷཧ
֤ϑΣʔζͷઃܭ ʙMeasureʙ 36 Measure ʹ͍ͭͯલ͓ͬͯͬͯ͘͜ͱ ɾܭଌख๏ͷબఆ ɾKPI ͷܾఆ ɹ* ଞʹӨڹΛ༩͑Δࢦඪ͕ͳ͍͔֬ೝ͢Δ
ɾϩάͷ֬ೝɺSQL ͷ࣮ߦ ɹ* ࣮ࡍʹҰ SQL Λୟ͍ͯΈΔ
֤ϑΣʔζͷઃܭ ʙLearnʙ 37 Learn ʹ͍ͭͯલ͓ͬͯͬͯ͘͜ͱ ɾࢦඪղऍͷཧ ɹ* ͜ͷ͕ߴͯ͘͜ͷ͕͍ͱ͖ͲΜͳͱ͖ͩΖ͏͔ ɾ݁Ռͷఆ ɹ*
ଌఆࢦඪ͕Ͳͷ͘Β͍ͷࣈʹͳͬͨΒͲ͏͢Δ͔ ɹ*ʮͳΜͱͳ͘GO ʯΛආ͚Δʢ࡞ͬͨͷग़ͨ͘͠ͳΔʣ ɾʮޭͷΠϝʔδʯΛڞ༗͢Δ
ֶͼͷαΠΫϧͷӡ༻ϙΠϯτʙ࣮ྫʙ 38 ࢪࡦલʹ͓͜ͳ͏ٞͷྫ
ࣾͰར༻͞ΕΔπʔϧ ϑϨʔϜϫʔΫͷհ 39
Build 40
ࣾϑϨʔϜϫʔΫͷհ ʙ Build ʙ 41 ՁԾઆγʔτ
ࣾϑϨʔϜϫʔΫͷհ ʙ Build ʙ 42 ՁԾઆγʔτ
ࣾϑϨʔϜϫʔΫͷհ ʙ Build ʙ 43 Chanko ɾϓϩτλΠϓ։ൃΛαϙʔτ͢Δ Rails ϓϥάΠϯ ɾϢʔβʔηάϝϯτ͝ͱͷϩδοΫద༻
ɾΤϥʔൃੜ࣌ͷϑΥʔϧόοΫ ɾhttps://github.com/cookpad/chanko EazyAb ɾA/B ςετ༻ Chanko ֦ு
Measure 44
ࣾϑϨʔϜϫʔΫͷհ ʙ Measure ʙ 45 Hakari2 ɾϩΪϯάɾKPI ཧπʔϧ ɾΩʔϫʔυΛઃఆͯ͠ΠϕϯτΛϩΪϯάͰ͖Δ ɾࣗಈͰ
dashboard ͕࡞͞ΕΔ
ࣾϑϨʔϜϫʔΫͷհ ʙ Measure ʙ 46 papa dashboard ɾHakari2 ͷϩάΛͱʹूܭ݁ՌΛՄࢹԽ ɾ༗ҙ͕ࠩ͋Γͦ͏͔Ͳ͏͔ͷ҆
Learn 47
ࣾϑϨʔϜϫʔΫͷհ ʙ Learn ʙ 48 Report.md ɾࢪࡦͷੳϨϙʔτΛ Markdown Ͱ࡞ ɾPull
Request ܗࣜͰӡ༻ ɾνʔϜͷϨϙδτϦʹɺϨϏϡʔͷ௨ͬͨݟΛϓʔϧ
ࣾϑϨʔϜϫʔΫͷհ ʙ Learn ʙ 49 Report.md 1. ࢪࡦͷੳϨϙʔτΛ Markdown Ͱ࡞͠ɺPR
Λఏग़
ࣾϑϨʔϜϫʔΫͷհ ʙ Learn ʙ 50 Report.md 2. νʔϜϝϯόʔΛத৺ʹϨϙʔτΛϨϏϡʔ
ࣾϑϨʔϜϫʔΫͷհ ʙ Learn ʙ 51 Report.md 3. ϨϏϡʔ͕௨ͬͨΒϚʔδͯ͠ϨϙʔτΛϓʔϧ
ࣾϑϨʔϜϫʔΫͷհ ʙ Learn ʙ 52 Report.md ɾݟͷϓʔϧՕॴ͕໌֬ʹͳΔ͜ͱͰࢀরੑ্͕͕Δ ɾϨϏϡʔΛ௨͢͜ͱͰɺݟͷਫ਼্͕͕Δ ɾϨϏϡʔࣗମʹΑͬͯɺͷߴ͍ঢ়ଶͰҰݟ͕ڞ༗͞ΕΔ ɾϨϏϡϫʔͷࢪࡦɾαʔϏεʹର͢Δཧղ͕ਂ·Δ
ɾPR ্ͷ͔ٞΒࢪࡦͷলΞΠσΟΞ͕ੜ·ΕΔ
·ͱΊ 53
·ͱΊ 54 ɾαʔϏε։ൃͰɺԾઆͷ࣮ߦ͔ΒֶͼΛಘΔαΠΫϧ͕࠷ॏཁ ɾஞ࣍తʹ࣮ߦͤͣɺ࠷ॳʹαΠΫϧશମΛઃܭ͢Δ ɾ֤ϑΣʔζͰదͳϑϨʔϜϫʔΫΛ͏