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
プロダクト志向ってなんなんだろうね
righttouch
PRO
0
160
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
KotlinConf 2025 現地で感じたServer-Side Kotlin
n_takehata
1
230
関数型まつり2025登壇資料「関数プログラミングと再帰」
taisontsukada
2
850
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
430
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
350
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
210
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
1
420
DroidKnights 2025 - 다양한 스크롤 뷰에서의 영상 재생
gaeun5744
3
320
GoのGenericsによるslice操作との付き合い方
syumai
3
690
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
810
5つのアンチパターンから学ぶLT設計
narihara
1
120
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
A Modern Web Designer's Workflow
chriscoyier
694
190k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Designing Experiences People Love
moore
142
24k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Writing Fast Ruby
sferik
628
61k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
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