Best Practices for Modern Service Ownership
The move from monolithic architectures to microservices has resulted in a monumental increase in the number of distinct pieces of software that engineering teams own. It’s getting harder -- some would say impossible -- for engineers to keep the architecture of the entire system in their heads. And this is to say nothing of understanding service interdependencies and the resultant risk profile associated with either code or architectural changes. If we don’t find solutions to these problems, we not only risk large-scale service disruption, but lengthening the time to diagnose and resolve incidents due to a lack of system-level understanding. In this talk, I’ll share insights from how the most innovative companies on the Internet today combat these issues with service maturity modelling: how they define maturity, how they measure it both before and after a service change is introduced to a system, and how they map out the potential impact of component changes on the whole environment. This talk is also a clarion call for a new way of keeping track of all the “stuff” that we’re building, because our existing approaches like CMDBs and Wikis are inadequate for keeping up with the scale of what’s being built today.