In 2015, I found myself in a tough but familiar situation (and one that many readers will recognize). Our team had a huge amount of development to do on an ambitious new web platform, and we were hiring developers by the dozen. But we couldn’t possibly scale the ops team to support the growth of the development team. To put it simply, we couldn’t find and hire good ops engineers at the same rate that we could find and hire developers. How were we going to support our rapidly expanding development team? We needed to find creative ways to empower our developers to write high quality code, and then deploy, monitor, and remediate problems themselves.