System Design & Software Engineering — Skills Plan

Planned skill map for System Design & Software Engineering. The curriculum will be developed and released in stages.

24 planned skills October 2026
Dedicated track in progress. This map is a plan, not a claim that every lesson is published. Existing live learning tracks remain available while this path is developed.

Translate requirements into APIs and data models, then reason about operating systems, caching, queues, distributed trade-offs, resilience, and system-design interviews.

Potential roles: Software Engineer · Backend Engineer · Technical Interview Candidate

Before you start

  • Programming and data structures
  • Networking and HTTP
  • SQL and database basics

What you’ll build

  • Design a URL service
  • Design an event-processing system
  • Review a production architecture

Your request helps us prioritize this track. We’ll use your email for updates about this track only. See our privacy notice.

24skills mapped
6learning stages
0published lessons

Prerequisites

PLANNED
  • Programming and data structures

    Build the Programming and data structures knowledge needed to follow the System Design & Software Engineering foundations.

  • Networking and HTTP

    Build the Networking and HTTP knowledge needed to follow the System Design & Software Engineering foundations.

  • SQL and database basics

    Build the SQL and database basics knowledge needed to follow the System Design & Software Engineering foundations.

Foundations

PLANNED
  • Requirements and constraints

    Explain how Requirements and constraints works and where it fits in the System Design & Software Engineering learning path.

  • API and data-model design

    Explain how API and data-model design works and where it fits in the System Design & Software Engineering learning path.

  • Processes, threads, and operating systems

    Explain how Processes, threads, and operating systems works and where it fits in the System Design & Software Engineering learning path.

  • Latency, throughput, and availability

    Explain how Latency, throughput, and availability works and where it fits in the System Design & Software Engineering learning path.

Core Skills

PLANNED
  • Caching and queues

    Use Caching and queues to implement a working capability and verify its behavior in System Design & Software Engineering.

  • Load balancing and service boundaries

    Use Load balancing and service boundaries to implement a working capability and verify its behavior in System Design & Software Engineering.

  • Relational and NoSQL trade-offs

    Use Relational and NoSQL trade-offs to implement a working capability and verify its behavior in System Design & Software Engineering.

  • Consistency and transactions

    Use Consistency and transactions to implement a working capability and verify its behavior in System Design & Software Engineering.

  • Testing and maintainable architecture

    Use Testing and maintainable architecture to implement a working capability and verify its behavior in System Design & Software Engineering.

Advanced / Production

PLANNED
  • Partitioning and replication

    Evaluate Partitioning and replication trade-offs against the performance, reliability, and safety needs of System Design & Software Engineering systems.

  • Event-driven and distributed systems

    Evaluate Event-driven and distributed systems trade-offs against the performance, reliability, and safety needs of System Design & Software Engineering systems.

  • Resilience, observability, and security

    Evaluate Resilience, observability, and security trade-offs against the performance, reliability, and safety needs of System Design & Software Engineering systems.

  • Capacity and cost estimation

    Evaluate Capacity and cost estimation trade-offs against the performance, reliability, and safety needs of System Design & Software Engineering systems.

  • Architecture decision records

    Evaluate Architecture decision records trade-offs against the performance, reliability, and safety needs of System Design & Software Engineering systems.

Real-World Projects

PLANNED
  • Design a URL service

    Deliver a working outcome with Design a URL service, then test it against the project requirements.

  • Design an event-processing system

    Deliver a working outcome with Design an event-processing system, then test it against the project requirements.

  • Review a production architecture

    Deliver a working outcome with Review a production architecture, then test it against the project requirements.

Career / Interview Preparation

PLANNED
  • System design interview framework

    Explain your approach to System design interview framework, defend key trade-offs, and discuss what you learned.

  • Trade-off communication

    Explain your approach to Trade-off communication, defend key trade-offs, and discuss what you learned.

  • Behavioral engineering examples

    Explain your approach to Behavioral engineering examples, defend key trade-offs, and discuss what you learned.

  • Mock design reviews

    Explain your approach to Mock design reviews, defend key trade-offs, and discuss what you learned.

← Back to all learning tracks
Share

Discussion

0

Have a better approach? Found something outdated? Share it — your knowledge helps everyone learning here.

Continue with GitHub
Loading...