contentintech
Learn/System Design/Start here — System Design
Beginner~8 min read

System Design — Course Guide

An ordered curriculum, a 40-topic coverage index, hands-on simulations and a practical interview study plan.

System DesignCurriculumInterviews

Learn the building blocks, then design a system

This course combines fundamentals, practical distributed-systems reasoning and end-to-end design workshops. Use the sidebar as your syllabus. Start with requirements and estimates, or find a concept in the index below.

The curriculum develops 40 core concepts alongside networking, security, consensus, observability and production recovery. System design is an open-ended field; this is a substantial interview and engineering foundation, not a claim that every possible specialization is covered.

Study in this order

PhaseLessonsProduce this evidence
Scope and requestsFundamentals; networking; API design; identityRequirements, capacity estimate and an authorized request trace
Data and scaleDatabase scaling; caching; scalability; storage/search/geoSchema, indexes, cache policy and partition key
Events and coordinationQueues; Kafka; real-time/webhooks; transactions/CDC; consensusDelivery contract and crash/recovery timeline
Operating systems at scaleMicroservices; reliability; observabilitySLO, overload policy and tested recovery plan
Apply and reviewWorked designs; design workshopsTen designs with alternatives and failure cases

A four-week example: spend week one on request/identity/data basics, week two on cache/partition/storage, week three on events/correctness/coordination, and week four on operations and timed workshops. Choose pace by your prior knowledge rather than treating four weeks as a guarantee.

Interactive experiments

The simulations are explicitly simplified browser models, not production benchmarks or live clusters.

Find a concept

Use this index to find the lesson that develops each concept. Related topics are linked within the lessons.

ConceptRead
APIsAPIs
API GatewaysAPI Gateways
REST vs GraphQLREST vs GraphQL
JWTsJWTs
WebhooksWebhooks
Long Polling vs WebSocketsLong Polling vs WebSockets
Load BalancingLoad Balancing
Proxy vs Reverse ProxyProxy vs Reverse Proxy
CDNCDN
Rate LimitingRate Limiting
CachingCaching
Distributed CachingDistributed Caching
Caching StrategiesCaching Strategies
Cache Eviction PoliciesCache Eviction Policies
Consistent HashingConsistent Hashing
SQL vs NoSQLSQL vs NoSQL
ACID TransactionsACID Transactions
Database IndexDatabase Index
Database ShardingDatabase Sharding
Database ScalingDatabase Scaling
Data ReplicationData Replication
Data RedundancyData Redundancy
Change Data CaptureChange Data Capture
CAP TheoremCAP Theorem
Strong vs Eventual ConsistencyStrong vs Eventual Consistency
ScalabilityScalability
AvailabilityAvailability
Single Point of FailureSingle Point of Failure
Latency vs ThroughputLatency vs Throughput
Stateful vs StatelessStateful vs Stateless
Message QueuesMessage Queues
Circuit BreakerCircuit Breaker
IdempotencyIdempotency
Fault ToleranceFault Tolerance
Disaster RecoveryDisaster Recovery
Distributed LockingDistributed Locking
Bloom FiltersBloom Filters
Concurrency vs ParallelismConcurrency vs Parallelism
Batch vs Stream ProcessingBatch vs Stream Processing
GeohashingGeohashing

Advanced topics

AreaAdditional coverage
CommunicationDNS/TCP/TLS/HTTP, connection reuse, SSE, gRPC, reconnect cursors, backpressure
CorrectnessIsolation anomalies, optimistic concurrency, outbox/inbox, CDC, sagas, 2PC, CQRS/event sourcing
CoordinationQuorums, Raft, election epochs, logical clocks, leases/fencing, split brain and CRDT boundaries
StorageB-trees/LSM/WAL, inverted indexes, object storage, compaction, approximate membership, spatial candidates
SecurityOAuth/OIDC/PKCE, token rotation, revocation, CSRF/XSS, tenant isolation and service identity
OperationsDeadline budgets, retry amplification, bulkheads, admission control, SLOs, traces, profiles and recovery drills
ArchitectureMonolith vs services, discovery, service mesh, control/data planes, rollout safety and cost

For specialized work, continue into database implementation, formal protocol verification, GPU/ML infrastructure, real-time media, regulatory security or domain-specific systems. The appropriate depth depends on the role.

Review before an interview

Take one requirement and explain its effect on API, data, latency and failure behavior. Calculate one capacity number with assumptions. Walk through a crash between each pair of writes. Explain who owns retries, where duplicate prevention is atomic and how the system recovers. Finish by naming the simplest viable design and what would justify the next layer of complexity.

Begin with fundamentals.

Section navigation