Back to system design notes

Learning roadmap

Distributed Systems at Scale

Choose a goal, then follow each stage as an ordered, explained outline.

Learning goal

Learn deeply

Build a durable mental model, then transfer it into a working application.

Foundation

Stage purpose: Establish the vocabulary and first working mental model.

Required background: Complete the linked prerequisites below or bring equivalent experience.

Expected outcome: Explain the core idea and use it in a small example.

Estimated time: 105 minutes

  1. Lesson · Estimated time: 35 minutes

    Concurrency in Online Services

    Outcomes
    • Explain the core idea in Concurrency in Online Services
    • Apply Concurrency in Online Services in a representative design

    Prerequisites: No prerequisite topics

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Handling Database Growth — Carry the Concurrency in Online Services model into the next design step and make the trade-off explicit.

  2. Lesson · Estimated time: 35 minutes

    Handling Database Growth

    Outcomes
    • Explain the core idea in Handling Database Growth
    • Apply Handling Database Growth in a representative design

    Prerequisites: Concurrency in Online Services

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Distributed Transactions — Carry the Handling Database Growth model into the next design step and make the trade-off explicit.

  3. Lesson · Estimated time: 35 minutes

    Distributed Transactions

    Outcomes
    • Explain the core idea in Distributed Transactions
    • Apply Distributed Transactions in a representative design

    Prerequisites: Handling Database Growth

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Live Sports Streaming at Scale — Carry the Distributed Transactions model into the next design step and make the trade-off explicit.

Core concepts

Stage purpose: Connect the concepts into a repeatable problem-solving model.

Required background: Complete the linked prerequisites below or bring equivalent experience.

Expected outcome: Apply the model to a representative exercise without copying a recipe.

Estimated time: 105 minutes

  1. Lesson · Estimated time: 35 minutes

    Live Sports Streaming at Scale

    Outcomes
    • Explain the core idea in Live Sports Streaming at Scale
    • Apply Live Sports Streaming at Scale in a representative design

    Prerequisites: Distributed Transactions

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Video-on-Demand Architecture — Carry the Live Sports Streaming at Scale model into the next design step and make the trade-off explicit.

  2. Lesson · Estimated time: 35 minutes

    Video-on-Demand Architecture

    Outcomes
    • Explain the core idea in Video-on-Demand Architecture
    • Apply Video-on-Demand Architecture in a representative design

    Prerequisites: Live Sports Streaming at Scale

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Feeds, Notifications & CMS — Carry the Video-on-Demand Architecture model into the next design step and make the trade-off explicit.

  3. Lesson · Estimated time: 35 minutes

    Feeds, Notifications & CMS

    Outcomes
    • Explain the core idea in Feeds, Notifications & CMS
    • Apply Feeds, Notifications & CMS in a representative design

    Prerequisites: Video-on-Demand Architecture

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Distributed Content Search — Carry the Feeds, Notifications & CMS model into the next design step and make the trade-off explicit.

Applied design

Stage purpose: Transfer the concepts into a realistic implementation task.

Required background: Complete the linked prerequisites below or bring equivalent experience.

Expected outcome: Produce a small artifact that proves the decision works.

Estimated time: 105 minutes

  1. Lesson · Estimated time: 35 minutes

    Distributed Content Search

    Outcomes
    • Explain the core idea in Distributed Content Search
    • Apply Distributed Content Search in a representative design

    Prerequisites: Feeds, Notifications & CMS

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Distributed Payments — Carry the Distributed Content Search model into the next design step and make the trade-off explicit.

  2. Lesson · Estimated time: 35 minutes

    Distributed Payments

    Outcomes
    • Explain the core idea in Distributed Payments
    • Apply Distributed Payments in a representative design

    Prerequisites: Distributed Content Search

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Weaving Services Together & Interviews — Carry the Distributed Payments model into the next design step and make the trade-off explicit.

  3. Lesson · Estimated time: 35 minutes

    Weaving Services Together & Interviews

    Outcomes
    • Explain the core idea in Weaving Services Together & Interviews
    • Apply Weaving Services Together & Interviews in a representative design

    Prerequisites: Distributed Payments

    Evidence: Practise the outcome in code and record what you learned.

    Current status: Not started

    Recommended next: Complete this path by applying these outcomes in your own project.