A conference talk by Maciej Jedrzejewski covering pragmatic software architecture decision-making. Key themes include avoiding premature complexity and FOMO-driven technology choices, understanding your business domain first through techniques like event storming and domain storytelling, and using a four-phase evolutionary model (Simplicity → Maintainability → Growth → Complexity) to guide architectural decisions. The talk emphasizes that architecture is context-dependent, decisions should be deferred as long as possible, and systems should evolve naturally rather than being over-engineered upfront. Real-world lessons include pitfalls like adding caching before optimizing indexes, using microservices for tiny user bases, and logging everything in production.
Sort: