Curated for this specific career level.
Level path
Software Architecture Foundations
Junior Software Architect
Build reliable foundations and enough context to contribute safely with guidance.
Concepts explicitly listed in this level.
Concepts span multiple tracks and layers.
Job description signalsTypical responsibilities↓
- Define software structures, boundaries, quality attributes, and evolutionary architecture decisions.
- Guide teams through architecture trade-offs, design reviews, documentation, and technical governance.
- Connect implementation constraints with reliability, scalability, security, and long-term maintainability.
- Implement well-scoped tasks with guidance from more senior engineers.
- Write readable code, tests, and documentation for small features or fixes.
- Participate in code reviews, debugging sessions, and team ceremonies.
- Learn the team codebase, delivery workflow, and production support expectations.
Track / layer masteryConcept coverage by layer↓
Software
9 concepts
Management
3 concepts
Software
75 concepts
Product
16 concepts
Management
14 concepts
Operations
9 concepts
Data
3 concepts
Theory
3 concepts
Learning scopeConcepts by learning area↓
Specific to this level
Concepts introduced by this level
Level concepts
Architecture Foundations
Understand architecture intent, quality attributes, and foundational structural patterns.
Level concepts
Architecture Communication
Document and communicate design decisions with clear context and trade-offs.
Cumulative level expectation
All concepts expected at this level
Inherited path
Coding Foundations
Developers begin by learning to translate requirements into working, readable code.
Inherited path
Developer Tooling
Daily development depends on version control, language tooling, static checks, and repeatable local workflows.
Inherited path
Testing & Debugging
A developer owns not only writing code, but proving that it behaves as intended.
Inherited path
Employment Basics
Technical candidates benefit from understanding who employs them, how they are paid, and which terms govern the working relationship.
Inherited path
Programming Foundations
Learn the basic building blocks used to express behavior in code.
Inherited path
Software Design
Structure code so it remains readable, testable, and maintainable as it grows.
Inherited path
Data & Persistence
Understand how applications store, retrieve, and protect durable state.
Inherited path
Architecture & Systems
Design systems that handle growth, latency, failure, and multiple communicating components.
Inherited path
Production Awareness
Know how software is built, deployed, observed, and recovered in production.
Inherited path
Web & APIs
Understand how clients and servers communicate through stable service interfaces.
Inherited path
Backend Design
Organize service code and boundaries so backend systems can evolve safely.
Inherited path
System Design
Design backend systems that handle scale, latency, state, and failure.
Inherited path
Production Backend
Understand how backend services are packaged, deployed, observed, and operated.
Path concepts
Architecture Foundations
Understand architecture intent, quality attributes, and foundational structural patterns.
Path concepts
Architecture Communication
Document and communicate design decisions with clear context and trade-offs.