Skip to content

High-Level Design

Define system architecture: components, data flow, and integration points. High-level design answers "what are the major pieces and how do they interact?"

flowchart LR J[Junior: Draw system components] --> M[Middle: Design component interactions] --> S[Senior: Manage system boundaries] --> P[Professional: Evolve architecture with teams]
flowchart LR Requirements --> Components --> Interfaces --> DataFlow --> Deployment
Level Guide You are done when
Junior Draw system components You can identify major components and describe their responsibilities.
Middle Design component interactions You can define interfaces, data flow, and integration patterns.
Senior Manage system boundaries You can set ownership, handle failure modes, and plan evolution.
Professional Evolve architecture with teams You can decompose architecture into team-owned services and track migration.

Practice rule

Separate concerns: each component should have a clear responsibility. Make interfaces explicit. Show data flow, not just component names.