Phase 7 — References
The architect's reading list, grouped by theme. Per-lab references.md
go deeper.
Architecture & design (the core craft)
- Sam Newman, Building Microservices (2nd ed.) — decomposition, contracts, integration, the distributed-monolith trap.
- Eric Evans, Domain-Driven Design + Vaughn Vernon, Implementing DDD — bounded contexts, context maps (the basis for service boundaries).
- Neal Ford et al., Building Evolutionary Architectures — fitness functions, architecture as a continuously-tested property.
- Martin Fowler's bliki — MicroservicePremium, EventDrivenArchitecture, CQRS, EventSourcing, StranglerFigApplication, IntegrationDatabase. https://martinfowler.com/
- Software Architecture: The Hard Parts (Ford/Richards) — distributed data, sagas, contract coupling, decision records.
- Michael Nygard, Documenting Architecture Decisions (the ADR origin). https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions
Distributed systems fundamentals
- Martin Kleppmann, Designing Data-Intensive Applications — the one book to read: replication, partitioning, consistency, stream processing, the dual-write problem. Maps to pa-04/05/06.
- CAP (Brewer) and PACELC (Abadi) — the availability/consistency and latency/consistency trade-offs.
- Werner Vogels, Eventually Consistent; Pat Helland, Life Beyond Distributed Transactions and Data on the Outside vs Data on the Inside.
Event-driven, streaming & messaging
- Apache Kafka docs — the partitioned log, consumer groups, offsets, delivery semantics, exactly-once. The model pa-04 builds. https://kafka.apache.org/documentation/
- NATS / JetStream, Pulsar, RabbitMQ docs — contrast the messaging models (subjects vs partitions vs queues vs streams).
- Confluent — Transactional Outbox, Saga pattern, Schema Registry + Avro/Protobuf compatibility. https://www.confluent.io/blog/
- microservices.io (Chris Richardson) — Saga, Outbox, CQRS, API Composition patterns. https://microservices.io/patterns/
Reliability & operations
- Google SRE Book / Workbook — SLIs/SLOs/error budgets, multi-window multi-burn-rate alerting, addressing cascading failures. https://sre.google/workbook/alerting-on-slos/
- Michael Nygard, Release It! — circuit breakers, bulkheads, timeouts, the stability patterns (pairs with gw-06).
- Marc Brooker's blog — retries, jitter, metastable failures.
Platform, IaC, GitOps
- Terraform / Pulumi docs — declarative resources, the dependency graph, plan/apply, state, drift. The model pa-07 builds.
- ArgoCD / Flux docs — git as source of truth, reconcile, sync waves, self-heal, prune, progressive delivery. The model pa-08 builds.
- Team Topologies (Skelton/Pais) — Conway's Law, platform teams, the paved road (why an architect's leverage is org-shaped).
Cross-phase links (already in this book)
- db-16…20 — consensus, replication, linearizability (pa-06 builds on).
- gw-08 / gw-10 — service mesh (xDS) and operators/CRDs (covered).
- gw-06 / gw-11 — circuit breakers/adaptive concurrency and tracing/SLO primitives (pa-09 builds on).
- gw-12 — progressive delivery / migration ladder (pa-08 builds on).