The companies I consult with are going through an agile DevOps transformation. Typically they focus on transitioning people into teams towards DevOps working, getting groups with max eight people into a team, and being able to work almost autonomously. This transformation almost always poses questions like; How do we divide the current software into the teams, which teams take ownership of what part of the current system, how do we functionally align the teams to the business strategy, and who goes in what team? We call this socio-technical architecture.
To deal with those questions companies request my help to design (micro)services using a Domain-Driven Design approach because it makes it easier to divide the software between teams. I believe enterprises who are going to or doing an Agile DevOps transformation need at least a Domain-Driven Design approach to create autonomous teams that are aligned with the business architecture. Aligning autonomous teams to the business strategy creates a set of unique challenges. In this war story talk, I will share my experience with moving towards autonomous aligned DevOps teams with a Domain-Driven Design approach.