Competencies: Software Architecture

Software Architecture

Overview

Software architecture covers the high-level design decisions that shape software systems — from design patterns and system design to distributed systems, data architecture, and API integration patterns.

Industry Frameworks

  • Martin Fowler’s Patterns of Enterprise Application Architecture — foundational patterns

  • Designing Data-Intensive Applications (Kleppmann) — distributed systems

  • AWS/Azure Well-Architected Framework — cloud architecture principles

  • C4 Model — software architecture diagramming

Subdomains

Subdomain Topics Personal Coverage Avg Level

System Design

15

None

Distributed Systems

15

None

API & Integration Architecture

15

None

Design Patterns

14

None

Data Architecture

14

None