design·lab

Learning path

The roadmap: from the result down to the foundations

Every real system rests on layers. Read this top-down to see what building an application actually requires — each step reveals what it depends on — until you reach the principles that hold everything up. Or flip it to learn bottom-up: master the foundations first, then climb to shipping real systems.

Now showing: result → foundations (what a system needs)

Each stop links its lessons — marks the must-knows. Click any to dive in.

  1. 🎯
    The result · applications

    Ship a real system

    The destination. Whole applications that stitch everything below together — this is what "done" looks like.

  2. 🔐
    System scale · security

    Make it safe

    A shipped system must resist attackers and prove who users are. Bolt this on and every layer stays trustworthy.

  3. 🚀
    System scale · devops & platform

    Ship it & run it

    Getting the code to production and keeping it healthy — package, deploy, observe, and don't reinvent commodity infrastructure.

  4. 🗄️
    System scale · data & storage

    Store, move & find the data

    Systems live and die by their data. Choose the right stores, move data reliably, and make it searchable at scale.

  5. 🌐
    System scale · distributed systems

    Survive scale & failure

    Once you run many machines, things partition and fail. These make the system stay up and stay correct.

  6. 🏗️
    System shape · architecture

    Shape the system

    Above the code: how services communicate and where state lives. The skeleton the scale concerns hang on.

  7. 🧩
    System shape · combinations

    Lego blocks — patterns working together

    The bridge from single patterns to whole apps — reusable building blocks you snap together. A few patterns combined solve a real feature.

  8. 🎛️
    Foundation · design patterns

    Reusable solutions (Gang of Four)

    Named, proven solutions to recurring problems. The vocabulary architecture and combinations are built from.

  9. 🧭
    Foundation · SOLID

    Principles for classes & modules

    Why patterns work. Five principles that keep code flexible — most patterns are just SOLID applied.

  10. 🛠️
    Foundation · approaches

    How you actually work

    Habits that keep everything above healthy while you build it — test-first, model the domain, drive with data.

  11. 🧱
    The bedrock · core principles

    Start here — the fundamentals

    The three ideas everything else obeys. Internalize these and every layer above gets simpler.

Tip: to build, read top→down (what each result needs). To learn, flip it and climb bottom→up. · Browse all 65 topics →