Chapter 2. Designing a Microservices Operating Model

In this book, we’ll be building a microservices-based application. To do that, we’ll design and build microservices as well as the infrastructure and tools you need to support them. However, the truth is that success with microservices takes more than writing code and deploying it. To really succeed, you need to have the right people, the right ways of working, and the right principles in place to make the whole system work. That’s why we want to start our journey by designing a general operating model for our application.

An operating model is the set of people, processes, and tools that underlies your system. It shapes all the decision making and work that you do when you build software. For example, an operating model can define the responsibilities of teams. It can also define governance over decision making and work.

You can think of the operating model as the “operating system” for your solution. All the work needed to build microservices happens on top of the team structures, processes, and boundaries you define. In practice, operating models can have a big scope and can be very detailed. But for our build, we’ll reduce the scope and focus on the most important parts of a microservices system—how the teams are designed and how they work together.

That’s what we’ll be covering in this chapter: the relationship between teams and microservices implementations. We’ll introduce a tool called Team Topologies and by the end ...

Get Microservices: Up and Running 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.