Level 7: Software Architecture
Identify the characteristics that matter, compare styles by their trade-offs, and record decisions so others understand why.
Outcome: Identify the characteristics that matter, compare styles by their trade-offs, and record decisions so others understand why.
ShopFlow now has four teams in one codebase. Architecture is the set of decisions that are hard to change — so we learn to name characteristics, compare styles, measure coupling and write decisions down.
The pressure on ShopFlow: Twenty engineers, one deployable, constant merge conflicts and fear of releasing.
Lessons in level 7
- What Architecture Really Is (and Isn’t) — Structure, characteristics, decisions and principles — and why “it depends” is the honest answer.
- Architecture Characteristics: The -ilities Under Pressure — Availability, scalability, performance, deployability… identified from real business scenarios.
- Architecture Styles and Their Trade-offs — Layered, modular monolith, microkernel, event-driven, space-based and microservices compared.
- The Modular Monolith — Strong module boundaries in one deployable — the most underrated architecture.
- Coupling, Connascence & Architecture Quanta — Measure how parts depend on each other, statically and at runtime.
- Architecture Decision Records — Write down context, decision and consequences so the “why” survives.
- Trade-off Analysis: Thinking Like an Architect — A repeatable way to compare options when there is no right answer.
Source books
- Software Architecture — Mark Richards, Neal Ford, Pramod Sadalage, Zhamak Dehghani
- Evolutionary Architecture — Neal Ford, Rebecca Parsons, Patrick Kua, Pramod Sadalage