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
Architecting for Experiments at Cookpad Global
Search
Chris Trott
February 16, 2018
Programming
0
3.5k
Architecting for Experiments at Cookpad Global
Chris Trott
February 16, 2018
Tweet
Share
More Decks by Chris Trott
See All by Chris Trott
MVVM Architecture at Timehop
twocentstudios
2
450
Other Decks in Programming
See All in Programming
Select API from Kotlin Coroutine
jmatsu
1
190
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
980
Java on Azure で LangGraph!
kohei3110
0
170
ニーリーにおけるプロダクトエンジニア
nealle
0
490
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
150
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
260
GoのGenericsによるslice操作との付き合い方
syumai
3
690
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
380
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
250
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
230
A2A プロトコルを試してみる
azukiazusa1
2
1.1k
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
1
690
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
53
7.7k
How to Ace a Technical Interview
jacobian
277
23k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Unsuck your backbone
ammeep
671
58k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Typedesign – Prime Four
hannesfritz
42
2.7k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
The Invisible Side of Design
smashingmag
299
51k
Transcript
Architecting for Experiments at Cookpad Global Chris Trott @Cookpad HQ
Tokyo 2018-02-16
Chris Trott iOS @ Cookpad Global @twocentstudios
Cookpad Global is...
Startup
Established
Requirements? —Experiment with new features —Support our existing features
Experimenting
Why experiment?
How to experiment
Prototyping tools
Audiences for user testing Squad · Company · In person
· Region · Production
Release tools Staging servers · DeployGate · TestFlight · Staged
releases · Feature flags
DeployGate
None
None
None
Product challenges of experimentation —What do we want to learn?
—Choosing the right tool —Choosing the right audience —Constraints of release tools
Technical challenges of experimentation —Writing code fast —Minimum level of
quality —Predicting change
Architecting experimental code
What is architecture?
Why architect?
When to architect?
Example feature
None
None
None
None
None
None
None
None
When to architect?
Architect to isolate change
When is the most change occurring?
Early in product development lifecycle?
Middle of product development lifecycle? —System complexity —Bugs —Audience changes
Late in product development lifecycle?
Full example
None
Other techniques
Use composable tools
Negotiate change
What about experimenting on stable systems?
Summary
Thank you!
None