Back to courses
Beginner

Foundations of System Design

Develop a system design from requirements and runtime fundamentals through networks, coordination, storage, security, and scaling. Worked examples and practice questions connect each design choice to its assumptions, costs, and failure behavior.

Sections
9
Lessons
40
Study time
18 Hours
Learner rating
New course

Your route

Course map

Move through the sections in order. Start with any open previews, then continue with the premium lessons when you are ready.

9 sections 40 lessons
  1. 1

    System Design Scope and Architecture

    4 lessons Free preview

  2. 2

    Runtime Resources and Observability

    4 lessons Premium

  3. 3

    Networks, Communication, APIs, and Serialization

    5 lessons Premium

  4. 4

    Time, Ordering, Coordination, and Consistency

    4 lessons Premium

  5. 5

    Failures, Availability, and Recovery

    4 lessons Premium

  6. 6

    Storage, Databases, Replication, and Partitioning

    8 lessons Premium

  7. 7

    Security and Trust

    5 lessons Premium

  8. 8

    Scaling Trade-offs, Technology Choices, and Patterns

    4 lessons Premium

  9. 9

    Interview Preparation and Next Steps

    2 lessons Premium

Curriculum

Course content

Open a section to preview its lessons.

  1. 1.1Introduction to System Design18 min
  2. 1.2How System Design Differs from Software Architecture10 min
  3. 1.3Defining Requirements: What a System Must Do and How Well14 min
  4. 1.4Monoliths and Microservices: Choosing the Shape of a System13 min

Learner feedback

Help shape this course

Your rating helps other learners choose a path and shows us which lessons need attention.

Rate this course

Tell us how useful this course was. You can update your rating later.

Loading your rating...

Course rating

No ratings yet. Yours would be the first.