Casey Rosenthal, Netflix
We are ushering in an era of pervasive machine learning, artificial intelligence, and loosely coupled service architectures. The future of software is unpredictable in a systemic sense, increasingly opaque even to the engineers building it. We can invest in transparency and systemic understanding, but that expenditure comes at the cost of velocity.
Increasing consumer expectations and competitive pressure will overwhelm that equation, and as an industry we need to come to terms with deploying and operating software systems that no human can reason about. If we can’t reason about it, how can we have confidence in it?
Chaos Engineering is a philosophy of testing that tackles systemic uncertainty head-on. Case studies from Netflix, which constitutes about a third of the Internet’s packets at peak, illustrate the need for Chaos, numerous ways it can be implemented, and exhibit the trust that can be built into an inherently unpredictable system. Chaos as a discipline is changing the way the industry builds complex distributed systems.