Chapter 8. Ensuring “You Build It, You Run It”

You can’t move fast if every service has to be handed over to someone else to run. That means services need to be owned in production by the team that wrote the code. You might, like the FT, have a first-line support team who are available 24/7 and can roll back a release, and restart, failover, or scale up services. For complicated issues though, people generally need a good understanding of the service, and a first-line team is just that: first line. They will need to pinpoint which team owns the service at fault and escalate to them.

This requires a mindset change, toward “You build it, you run it”, as Werner Vogels called it when describing Amazon’s move to a service-oriented architecture with teams having complete responsibility for their services.

Teams owning their own services in production brings benefits: you make different decisions about how to build a service when you are the person who might get called at 2 a.m. But it also means that lots of people who’ve never been responsible for production support now will be. And you’ll probably have some teams that are too small to run an out-of-hours rota.

Supporting your applications in production can be a steep learning curve for product teams that may have no operational experience. While the paved road can help, product teams still need to be able to diagnose and fix problems in their application. That means getting comfortable in production and building things with operational ...

Get Enabling Microservice Success now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.