At Netflix, we realize that there's a tension between the availability of our service and our speed of innovation. If we move slowly, we can be very available—but that's not a good business proposition. If we move super fast, we risk downtime—and that might annoy our customers. But what if we could increase our velocity without significantly impacting availability? How can we shift that curve so that we're moving faster without dropping any of those coveted 9s?
How can we engineer velocity by weaving together tooling and culture with software development to expose and elevate highly effective practices? This talk describes various components of Netflix's continuous delivery platform—much of which is available in open source. I'll show how these pieces fit together and allow us to build scaffolding so that we're comfortable with software developers making the decision to push the button for prod deployment—and to help them recover if necessary. As a result, we can run fast, trusting our tooling and our culture.
I'll also describe how we test our resiliency through simulating failure, unleashing the monkeys (Simian Army) on our production environment. Because if you're afraid of cute little monkeys, imagine how afraid you'll be of a production environment that offers those same risks but doesn't give you an opportunity to test your response to those dangers.
Throughout this talk, I hope that you will challenge yourself to consider how your company can "shift the curve" through tooling and achieve a high-velocity environment without negatively impacting reliability.