AlgoInsight

System Design

System Design Fundamentals

The complete system-design vocabulary and conceptual landscape in 30 modules - core concepts, networking, APIs, caching, databases, distributed systems, data structures for scale, architecture, big data, and observability.

Beginner1619176 lessons31 free lessonssystem-designhlddistributed-systemsdatabasescaching

System Design Fundamentals

Comprehensive coverage of system design as a discipline - the full vocabulary, the full conceptual landscape, and the patterns that show up across all real systems. A beginner finishes this course able to read and contribute to any system design conversation; an experienced engineer finishes with their knowledge organised and the gaps filled.

The treatment is broader than deep - depth comes in System Design Advanced - but "broader than deep" doesn't mean shallow: each concept is covered well enough that you can use it. Across 30 modules you'll work through the foundations (core concepts, networking, load balancing, API design / infrastructure / security, real-time and async communication), the data layer (caching fundamentals and distributed caching, database fundamentals, the major database types, database internals, read and write scaling, storage systems), the trade-offs that show up everywhere, and the distributed-systems backbone (distribution fundamentals, time and ordering, coordination and consensus, distributed transactions, data structures for scale, architectural and microservices patterns, big-data processing, deployment and release strategies, observability, and security fundamentals).

Brandon Carter's voice is the spine, with founder-guest lessons woven in where their domain expertise fits (Emeka on streaming, Nikhil on consensus, Deepika on vector databases).

The first two modules - Welcome & Orientation and Core Concepts - are free to preview. The full course is a one-time purchase with lifetime access.

What you will learn

Prerequisites

Course outline

Module 1: Welcome and Orientation

Welcome and Orientation — 5 topics.

Module 2: Core Concepts

Core Concepts — 8 topics.

Module 3: Networking

Networking — 7 topics.

Module 4: Load Balancing

Load Balancing — 4 topics.

Module 5: API Design

API Design — 7 topics.

Module 6: API Infrastructure

API Infrastructure — 2 topics.

Module 7: API Security

API Security — 5 topics.

Module 8: Real-Time Communication

Real-Time Communication — 5 topics.

Module 9: Asynchronous Communication

Asynchronous Communication — 6 topics.

Module 10: Caching Fundamentals

Caching Fundamentals — 6 topics.

Module 11: Distributed Caching

Distributed Caching — 5 topics.

Module 12: Database Fundamentals

Database Fundamentals — 3 topics.

Module 13: Database Types - Deep Dive

Database Types - Deep Dive - 8 topics.

Module 14: Database Internals

Database Internals — 3 topics.

Module 15: Database Scaling - Reads

Database Scaling - Reads - 6 topics.

Module 16: Database Scaling - Writes

Database Scaling - Writes - 3 topics.

Module 17: Storage Systems

Storage Systems — 4 topics.

Module 18: Key Tradeoffs

Key Tradeoffs — 6 topics.

Module 19: Distributed System Fundamentals

Distributed System Fundamentals — 5 topics.

Module 20: Time and Ordering

Time and Ordering — 4 topics.

Module 21: Coordination and Consensus

Coordination and Consensus — 8 topics.

Module 22: Distributed Transactions

Distributed Transactions — 5 topics.

Module 23: Data Structures for Scale

Data Structures for Scale — 12 topics.

Module 24: Architectural Patterns

Architectural Patterns — 9 topics.

Module 25: Microservices Patterns

Microservices Patterns — 8 topics.

Module 26: Big Data Processing

Big Data Processing — 9 topics.

Module 27: Deployment Strategies

Deployment Strategies — 5 topics.

Module 28: Release Patterns

Release Patterns — 4 topics.

Module 29: Observability

Observability — 8 topics.

Module 30: Security Fundamentals

Security Fundamentals — 6 topics.

Browse all courses