Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Architecting for Experiments at Cookpad Global
Search
Chris Trott
February 16, 2018
Programming
3.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Architecting for Experiments at Cookpad Global
Chris Trott
February 16, 2018
More Decks by Chris Trott
See All by Chris Trott
Let's Write a Train Tracking Algorithm
twocentstudios
0
390
MVVM Architecture at Timehop
twocentstudios
2
520
Other Decks in Programming
See All in Programming
カツオ、ご期待ください
suneo3476
0
190
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
8
2.2k
複雑なUIコンポーネントとの ⻑い付き合い⽅:波及するバグからテスト戦略を経て、安全な再設計へ
mixplace
0
410
Next.js: The final boss of Web Performance
guaca
0
250
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
1.9k
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
150
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
270
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
180
golang-bob.pdf
iwatsukayura
0
130
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
180
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
0
450
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
180
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
480
Joys of Absence: A Defence of Solitary Play
codingconduct
1
550
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
640
Chasing Engaging Ingredients in Design
codingconduct
0
360
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
The World Runs on Bad Software
bkeepers
PRO
72
12k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
From π to Pie charts
rasagy
1
400
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