2009 05 01 How To Build A Lean Startup Step By Step
How to Build a Lean Startup,
step‐by‐step #leanstartup
Eric Ries (@ericries)
h?p://StartupLessonsLearned.blogspot.com
Agenda
What is a startup?
•
Why do startups fail?
•
IntroducJon to the Lean Startup
•
Product Development in a Lean Startup
•
Specific techniques
•
– ConJnuous Deployment
– Rapid Split‐tesJng
– Five Why’s
Commodity technology stack
• Leverage = for each ounce of effort you invest
in your product, you take advantage of the
efforts of thousands or millions of others.
• It’s easy to see how high‐leverage technology
is driving costs down.
• More important is its impact on speed.
• Time to bring a new product to market is
falling rapidly.
Customer Development
ConJnuous cycle of customer
interacJon
Rapid hypothesis
tesJng about market,
pricing, customers, …
Extreme low cost, low
burn, Jght focus
Measurable gates for
investors
h?p://bit.ly/tpTtE
A tale of two startups, revisited
• Mirrors the changes in development
methodologies over the past few years.
• Let’s look at those changes schemaJcally.
• These examples are drawn from so]ware
startups, but increasingly:
– All products require so]ware
– All companies are operaJng in a startup‐like
environment
TradiJonal Product Development
Unit of progress: Advance to Next Stage
Waterfall
Requirements
Design
Implementa2on
Verifica2on
Maintenance
Problem: Known Solution: Known
Agile
Unit of progress: a line of working code
“Product Owner” or
in-house customer
Problem: Known Solution: Unknown
ConJnuous Deployment
IDEAS
Learn Faster Code Faster
LEARN BUILD
Five Whys Root ConJnuous
Cause Analysis Deployment
DATA CODE
Measure Faster
MEASURE
Rapid Split Tests
Continuous Deployment
• Deploy new software quickly
• At IMVU time from check-in to production = 20 minutes
• Tell a good change from a bad change (quickly)
• Revert a bad change quickly
• Work in small batches
• At IMVU, a large batch = 3 days worth of work
• Break large projects down into small batches
Cluster Immune System
What it looks like to ship one piece of code to production:
• Run tests locally (SimpleTest, Selenium)
Everyone has a complete sandbox
o
• Continuous Integration Server (BuildBot)
o All tests must pass or “shut down the line”
Automatic feedback if the team is going too fast
o
• Incremental deploy
Monitor cluster and business metrics in real-time
o
Reject changes that move metrics out-of-bounds
o
• Alerting & Predictive monitoring (Nagios)
Monitor all metrics that stakeholders care about
o
If any metric goes out-of-bounds, wake somebody up
o
Use historical trends to predict acceptable bounds
o
When customers see a failure:
Fix the problem for customers
o
Improve your defenses at each level
o
Rapid Split Tests
IDEAS
Learn Faster Code Faster
LEARN BUILD
Five Whys Root ConJnuous
Cause Analysis Deployment
DATA CODE
Measure Faster
MEASURE
Rapid Split Tests
Split‐tesJng all the Jme
• A/B tesJng is key to validaJng your
hypotheses
• Has to be simple enough for everyone to use
and understand it
• Make creaJng a split‐test no more than one
line of code:
if( setup_experiment(...) == quot;controlquot; ) {
// do it the old way
} else {
// do it the new way
}
Five Whys
IDEAS
Learn Faster Code Faster
LEARN BUILD
Five Whys Root ConJnuous
Cause Analysis Deployment
DATA CODE
Measure Faster
MEASURE
Rapid Split Tests
Five Whys Root Cause Analysis
• A technique for conJnuous improvement of
company process.
• Ask “why” five Jmes when something
unexpected happens.
• Make propor)onal investments in prevenJon
at all five levels of the hierarchy.
• Behind every supposed technical problem is
usually a human problem. Fix the cause, not
just the symptom.
There’s much more…
IDEAS
Learn Faster Code Faster
LEARN BUILD
Split Tests Unit Tests
Customer Interviews Usability Tests
Customer Development ConJnuous IntegraJon
Five Whys Root Cause Analysis Incremental Deployment
Customer Advisory Board Free & Open‐Source Components
Falsifiable Hypotheses Cloud CompuJng
Product Owner Accountability Cluster Immune System
DATA CODE
Customer Archetypes Just‐in‐Jme Scalability
Cross‐funcJonal Teams Refactoring
Semi‐autonomous Teams Developer Sandbox
Smoke Tests
Measure Faster
MEASURE
Split Tests Funnel Analysis
Clear Product Owner Cohort Analysis
ConJnuous Deployment Net Promoter Score
Usability Tests Search Engine MarkeJng
Real‐Jme Monitoring Real‐Time AlerJng
Customer Liaison PredicJve Monitoring
The Lean Startup
• You are ready to do this, whether you are:
– Thinking of starJng a new company, but haven’t
taken the first step
– Are in a startup now that could iterate faster
– Want to create the condiJons for lean innovaJon
inside a big company
• Get started, now, today.
Thanks!
• Startup Lessons Learned Blog
– h?p://startuplessonslearned.blogspot.com/
• The Lean Startup Workshop
– An all‐day event for a select audience
– May 29 and June 18, 2009 in San Francisco
– h?p://training.oreilly.com/theleanstartup/
• Other upcoming events
– h?p://bit.ly/b9w1y