Continuous Change at Scale

John Goulah @johngoulah from ETSY

Why continuous deployment work, prerequisites you need in place and how you start.

Every time you make changes there is risk, but continuous deployment makes the integration smoother, creates engineer happiness (from immediate feedback and more learning opportunities).

Prerequisites: you need continuous integration environment, a stable trunk, we also have a “try” server, instrumentation (you need to see where problems are), feature flags (a piece of code able to turn a feature on and off), rampups (release code to some of your users and ramp it up eg on github), people need autonomy (they act as their own release manager and “own” their code).

Culture bits: a tradeoff (more smaller risks, but fewer big ones), have trust in the people you use to deploy code, eliminate the ceremony of having big releases, get used to the idea that deploys are not releases, create dashboards for measurements and graphs, non-blocking tests (it’s ok to throw out tests if they’re not working for you), keep it simple, start small.

Slides below:

Liked this post? Follow this blog to get more. 

Thanks to Pollenizer, our site sponsor