Training Agenda

Software Architecture

Software architecture is the set of decisions that are hard to reverse — the ones that determine whether a system stays maintainable as it grows or gradually collapses under its own weight. This training covers architecture thinking, documentation, quality attributes, and the patterns that experienced architects use to make systems robust, evolvable, and aligned with business needs. Practical and decision-focused, not purely theoretical.

2 days On-site, remote, or hybrid Up to 20 participants German or English
What We Cover
Decisions that define how systems evolve
Day 1

Architecture Thinking & Documentation

  • What architecture actually is — and what architects actually do
  • Architecture vs design: where the boundary sits and why it matters
  • Quality attributes (non-functional requirements): availability, scalability, maintainability, security, performance
  • Architecture trade-offs: no free lunches — ATAM and lightweight trade-off analysis
  • Architecture documentation: C4 model — Context, Container, Component, Code diagrams
  • Architecture Decision Records (ADRs): capturing decisions with context and consequences
  • Fitness functions: automated architecture governance
  • Common architecture styles: layered, hexagonal (ports & adapters), pipes and filters, event-driven
  • Monolith vs microservices: the real decision criteria, not the hype
  • Strangler Fig pattern: migrating legacy systems incrementally
Day 2

Distributed Systems & Resilience

  • CAP theorem and PACELC: what they actually mean for system design
  • Consistency patterns: eventual consistency, saga, outbox pattern
  • Service communication: synchronous REST/gRPC vs asynchronous events — choosing deliberately
  • API gateway and BFF (Backend for Frontend) patterns
  • Resilience patterns: circuit breaker, bulkhead, retry with backoff, timeout
  • Caching strategies at different layers: CDN, API, database
  • Data architecture: shared database anti-pattern, database per service
  • Security architecture: zero trust, defense in depth, secrets management
  • Scalability patterns: horizontal scaling, read replicas, sharding
  • Architecture fitness: measuring and maintaining architectural health over time
Learning Outcomes
What your team walks away with

Architects and senior developers who can make and justify architecture decisions — with the vocabulary, patterns, and documentation practices to communicate them clearly.

Book the Software Architecture training

Especially valuable for senior developers stepping into architecture roles, or teams making significant structural decisions.

Get in touch