Continuous Deployment                              kellan@etsy.com, @kellan,                              VP of Engineerin...
What? => Why? => How?Thursday, March 17, 2011
What is it?Thursday, March 17, 2011
Small, frequent changes.                               To production.Thursday, March 17, 2011
Small           Frequent                           Small, frequent changes.                               To production.Th...
A collection of techniques                           to avoid SUCKING.Thursday, March 17, 2011
Why do we do it?Thursday, March 17, 2011
Agility: Always Be ShippingThursday, March 17, 2011
MTTD / MTTRThursday, March 17, 2011
4 change related “incidents” in 2010Thursday, March 17, 2011
time to detect: <15 minutes                           time to resolve: ~216,000 minutes                                   ...
mean time to detect:                                       < 5 minutes                                                   m...
Encourages ExperimentationThursday, March 17, 2011
1%Thursday, March 17, 2011
Optimize for Developer HappinessThursday, March 17, 2011
DevOpsThursday, March 17, 2011
Scales Trust and RiskThursday, March 17, 2011
How do we do it?Thursday, March 17, 2011
Work in trunk,                           branch in code.Thursday, March 17, 2011
“All existing revision control systems were             built by people who build installed             software”         ...
if ($cfg[‘awesome_new_search’]) {                               # new hotness                               $rsp = do_solr...
one install, multiple versions.Thursday, March 17, 2011
Keep it simple.Thursday, March 17, 2011
One button deployThursday, March 17, 2011
Operability ReviewThursday, March 17, 2011
CommunicationThursday, March 17, 2011
Graph Everything!Thursday, March 17, 2011
FAQ:                Schemas?                Testing and continuous integration?                QA?Thursday, March 17, 2011
/trunk/, config flags, 1B deploy, what                      could go wrong?, IRC, graphsThursday, March 17, 2011
Upcoming SlideShare
Loading in...5
×

Continuous deployment

6,631

Published on

A 20 minute talk I gave as part of the "Code as Craft: Moving Fast at Scale" Etsy micro-conference

Published in: Technology
0 Comments
13 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,631
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
96
Comments
0
Likes
13
Embeds 0
No embeds

No notes for slide

Continuous deployment

  1. 1. Continuous Deployment kellan@etsy.com, @kellan, VP of EngineeringThursday, March 17, 2011
  2. 2. What? => Why? => How?Thursday, March 17, 2011
  3. 3. What is it?Thursday, March 17, 2011
  4. 4. Small, frequent changes. To production.Thursday, March 17, 2011
  5. 5. Small Frequent Small, frequent changes. To production.Thursday, March 17, 2011
  6. 6. A collection of techniques to avoid SUCKING.Thursday, March 17, 2011
  7. 7. Why do we do it?Thursday, March 17, 2011
  8. 8. Agility: Always Be ShippingThursday, March 17, 2011
  9. 9. MTTD / MTTRThursday, March 17, 2011
  10. 10. 4 change related “incidents” in 2010Thursday, March 17, 2011
  11. 11. time to detect: <15 minutes time to resolve: ~216,000 minutes Deep Water HorizonThursday, March 17, 2011
  12. 12. mean time to detect: < 5 minutes mean time to resolve: MMTR: 4.5 minutes MTTD: <5 minutes 4.5 minutesThursday, March 17, 2011
  13. 13. Encourages ExperimentationThursday, March 17, 2011
  14. 14. 1%Thursday, March 17, 2011
  15. 15. Optimize for Developer HappinessThursday, March 17, 2011
  16. 16. DevOpsThursday, March 17, 2011
  17. 17. Scales Trust and RiskThursday, March 17, 2011
  18. 18. How do we do it?Thursday, March 17, 2011
  19. 19. Work in trunk, branch in code.Thursday, March 17, 2011
  20. 20. “All existing revision control systems were built by people who build installed software” - Paul Hammond, Always Ship Trunk, Velocity 2010Thursday, March 17, 2011
  21. 21. if ($cfg[‘awesome_new_search’]) { # new hotness $rsp = do_solr(); } else { config flags # boring old stuff $rsp = do_grep(); }Thursday, March 17, 2011
  22. 22. one install, multiple versions.Thursday, March 17, 2011
  23. 23. Keep it simple.Thursday, March 17, 2011
  24. 24. One button deployThursday, March 17, 2011
  25. 25. Operability ReviewThursday, March 17, 2011
  26. 26. CommunicationThursday, March 17, 2011
  27. 27. Graph Everything!Thursday, March 17, 2011
  28. 28. FAQ: Schemas? Testing and continuous integration? QA?Thursday, March 17, 2011
  29. 29. /trunk/, config flags, 1B deploy, what could go wrong?, IRC, graphsThursday, March 17, 2011
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×