Books about high-performance software delivery: DevOps Handbook + Team Topologies + Accelerate + Microservices Patterns
The success triangle, which I introduced in chapter 1 of my book (Microservices Patterns), describes how successful software development requires a combination of three things: process, organization, and architecture. Specifically, delivering software rapidly, frequently and reliably needs the following:
- Process - Lean product development and DevOps (which includes continuous delivery and deployment)
- Organization - Small, long-lived, product-centric, autonomous teams
- Architecture - Loosely coupled, deployable and testable in order to enable DevOps and ensure that the teams are loosely coupled. For some applications, the monolithic architecture is sufficient. However, for large, complex applications the microservice architecture is a better choice.
In addition to my book, there are three other must read books on high-performance software delivery:
- DevOps Handbook - explains DevOps
- Team Topologies - explains how to organize teams
- Accelerate - presents the evidence of how high-performance software delivery is a competitive advantage and why DevOps, loosely coupled teams and a loosely coupled architecture are essential
I’d also recommend reading the books by Mark Schwartz.