1
Requirements, constraints, and trade-offs (latency, cost, accuracy, freshness)
2
Design docs and communication (diagrams, APIs, assumptions, failure modes)
3
Distributed Systems Basics
4 subtopics
4
Consistency models, CAP, and read/write trade-offs
5
Sharding, partitioning, replication, and rebalancing
6
Time, ordering, idempotency, retries, and deduplication
7
Fault tolerance patterns (timeouts, circuit breakers, bulkheads)
8
Storage Systems (choosing the right datastore)
4 subtopics
9
Relational modeling, indexes, transactions, and query planning basics
10
NoSQL patterns: key-value, document, wide-column (when and why)
11
Data lake vs warehouse concepts (batch analytics foundations)
12
Search and vector databases (ANN indexes, recall/latency trade-offs)
13
Messaging and Streaming Basics
4 subtopics
14
Queues vs pub/sub (work distribution vs fan-out)
15
Kafka-style concepts: partitions, consumer groups, offsets
16
Delivery semantics (at-most/at-least/exactly-once) and implications
17
Stream processing basics (windows, watermarks, late events)
18
Caching and Performance Primitives
4 subtopics
19
Caching patterns (cache-aside, read-through, write-through, write-back)
20
Cache invalidation and consistency strategies (TTL, stampede protection)
21
CDN and edge concepts (latency reduction, global distribution)
22
Rate limiting, load shedding, backpressure, and graceful degradation
23
API Design and Service Interfaces
4 subtopics
24
REST vs gRPC and contract-driven APIs
25
Pagination, filtering, batching, and async APIs for heavy workloads
26
Versioning and backward compatibility strategies
27
AuthN/AuthZ integration points (tokens, scopes, service identity)