recall

← recall

Fundamentals of Software Architecture book

First principles of software architecture: characteristics, components, integration, soft skills.

Ford, Richards · 2020 · architecture

First principles of software architecture: characteristics, components, integration, soft skills.

why it matters

Most architecture books are about *patterns*. This one is about the underlying skill: how do you reason about architectural characteristics (scalability, security, evolvability), how do you trade them off, how do you communicate the decisions. Less about specific patterns, more about the practice itself.

key ideas

  • Architecture characteristics aren't free; choosing performance often costs evolvability, etc.
  • Architecture decision records (ADRs) as the unit of architectural communication
  • Architecture styles (layered, microservices, event-driven, etc.) chosen based on which characteristics dominate
  • Soft skills: negotiation, presentation, technical leadership are first-class architecture skills

who should read it

Senior engineers becoming architects, or staff engineers wanting vocabulary for architecture conversations. Pair with Hard Parts.

references: