Software Architecture for Developers (3-hour workshop)
summary
Workshop argues architecture is significant design decisions (measured by cost of change) and shows how to prove those decisions by building, measuring and iterating. Covers coupling, cohesion, threading/time models (sometimes solved only by process boundaries), microservice tradeoffs, dependency risk (left‑pad and an expired Ericsson license), and ADR practice with ADRs as markdown alongside code. Gives concrete wins: refactor a monster switch into a table lookup and gain ~200% performance, and recommends deferring hard decisions until the team gains knowledge.
AI-written summary · about
chapters (23)
- 0:00Introduction
- 2:29Defining Architecture
- 7:53Design vs. Architecture
- 14:12Creating Architecture
- 18:32Developer Perspective
- 23:36Addressing Change
- 30:10Managing Technical Debt
- 34:01Team Skills and Structure
- 37:56Structural Elements
- 43:41Dependencies and Assumptions
- 50:56Platform and Market Risks
- 58:09Conway's Law and Teams
- 1:12:30Break
- 1:24:16Process and Architecture
- 1:31:55Iterative Development
- 1:40:30Prudent Debt Management
- 1:48:51Modeling for Discovery
- 1:55:17Bounded Contexts
- 1:58:42Architecture Records
- 2:05:31Measurement and Evaluation
- 2:11:57History and Decay
- 2:20:34Quality Requirements
- 2:26:52Conclusion
related talks
41mSoftware architecture as a contributor to high performing teams
45mFive things every developer should know about software architecture
51mSoftware Architecture for Humans!
45mSoftware Architecture for Humans!
45mFive things every developer should know about software architecture
38mAgile Architecture
57mSoftware Architecture: The Hard Parts
47mMaking architecture decisions, the Agile Way
