Designing Microservices
summary
Claims that most teams claiming microservices aren’t really doing them (about 80%), and that micro means a domain/bounded context not small code. Recommends domain-based partitioning and business-driven boundaries, with goals of autonomous development, isolation of deployment and separation of governance. Uses CI/CD and automated deployments (tests → automatic cloud deploy) and rigorous semantic versioning to avoid brittle integrations. Notes monoliths remain simpler and cheaper for startups (most fail), automation multiplies productivity and works when teams keep communications coarse‑grained.
AI-written summary · about
chapters (23)
- 0:00Introduction to design
- 1:03Extensibility pitfalls
- 3:55Reuse and SOLID principles
- 6:04YAGNI and DRY explained
- 12:06Cohesion and coupling
- 14:58Encapsulation deep dive
- 16:45Microservices vs monoliths
- 21:03Microservices naming issues
- 24:58Monoliths in practice
- 27:31Deployment unit differences
- 31:52When to build microservices
- 33:15Business agility challenges
- 37:34Autonomous microservices
- 38:17SOA vs microservices
- 41:32Domain vs technology partitioning
- 43:21Business-driven design
- 46:12Key microservices considerations
- 48:21Trade-offs in design
- 51:11Balancing principles and goals
- 55:41Encapsulation and business agility
- 56:23Cohesion and coupling trade-offs
- 58:07Last responsible moment
- 1:00:40Summary and Q&A
related talks
01h 01mArchitectural Principles and Practices to Build MicroServices
55mMicroservices, Where Did It All Go Wrong
26mPros/Cons of Microservices
38mMicroservices, a bittersweet symphony
01h 00mPrinciples for Building MicroServices
56mDesigning in the World of Microservices
01h 00mMicroservices, Where Did It All Go Wrong?
57mEmbracing Microservices
