Skip to main content
Advanced8-10 hours

Preview: System Design for Engineers

Reason about open-ended system design by walking through systems actually built — RAG, async job pipelines, streaming chat, rate limiters, real-time messaging, and orchestration engines — and the trade-offs that separate a workable design from a brittle one.

What You'll Learn

Structure any design: clarify, estimate, define the API, model the data, then scale
Design a document Q&A / RAG system end to end, from chunking to streaming
Design an async job-processing pipeline with idempotency, retries, and dead-letter handling
Design a streaming chat backend, a rate limiter, and a real-time messaging fan-out
Reason about trade-offs explicitly — and articulate why one design beats another

Course Modules

1theory60 minutes

A Framework for System Design

The framework that keeps you in control: clarify, estimate, API, data model, scale, trade-offs

2theory90 minutes

Designing a Document Q&A / RAG System

Ingest, chunk, embed, store in pgvector, run two-stage hybrid retrieval, and stream a grounded answer

3theory90 minutes

Designing an Async Job-Processing Pipeline

Event ingestion to a queue to workers running a typed workflow DAG, with idempotency and retries

4theory75 minutes

Designing a Streaming Chat Backend

WebSocket upgrade, per-session actors, and token-by-token streaming with backpressure

5theory60 minutes

Designing a Rate Limiter

Token-bucket limiting, JWT auth on connect, and returning 429 under load

6theory75 minutes

Designing Real-Time Messaging

Cross-connection fan-out via a per-connection sender registry and a forwarder task

7theory90 minutes

Designing a Workflow / Orchestration Engine

Type-resolved nodes, graphs validated before they run, token budgeting, and a real concurrency war story

Ready to Start Learning?

Join this learning path and master system design for engineers with hands-on projects and real-world examples.