Skip to content
Pressentify
Home
Learn
Handbooks
32 print-ready volumes across 6 handbooks
7 volumes
System Design
2 volumes
AWS Production
4 volumes
Python
6 volumes
FastAPI
7 volumes
AI Full-Stack
6 volumes
Django
Topics
14 courses, beginner to production
Python
PostgreSQL
System Design
Django
MongoDB
AWS
AI Full-Stack
Data Structures & Algorithms
JavaScript
React
Docker
FastAPI
Next.js
MySQL
Cheatsheets
8 one-page quick references
Python
PostgreSQL
System Design
Django
MongoDB
AWS
AI Full-Stack
Data Structures & Algorithms
DSA Lab
12 animated lessons, synced to running code
Binary Search
Two Pointers
Maximum Subarray (Kadane’s)
Move Zeroes
Minimum Size Subarray Sum
Roadmap
Study planner
Job hunt
AI Interview
Blog
Sign in
Get started
Cheatsheets
/
System Design
System Design cheat sheets
71 sheets · 71 sections
Quick reference
Full course
01
System Design Fundamentals
1 sheet
System Design Fundamentals
What system design actually is
Core vocabulary: the terms every later section assumes
Product requirements vs engineering requirements
Architecture vs detailed design vs implementation vs operations
02
Functional vs Non-Functional Requirements
1 sheet
Functional vs Non-Functional Requirements
Functional requirements, in full
The eleven non-functional categories
Turning vague requirements into measurable targets
Worked numeric examples
03
Requirements Clarification
1 sheet
Requirements Clarification
What to identify before drawing boxes
Naming the traffic shape
Drawing the consistency boundary
Drawing the synchronous boundary
04
Capacity Estimation
1 sheet
Capacity Estimation
What to estimate before designing
The core capacity formulas
Reads, writes, cache hits and growth
Powers-of-ten approximation
From estimate to infrastructure
05
Back-of-the-Envelope Math
1 sheet
Back-of-the-Envelope Math
What a back-of-the-envelope estimate covers
The unit conversions every estimate depends on
Peak-to-average ratios and growth over time
Knowing which assumptions dominate the result
06
Latency and Throughput
1 sheet
Latency and Throughput
Latency vs throughput
Percentile latency: p50, p90, p95, p99, p99.9
Why averages hide tail latency problems
Little's Law: concurrency ≈ throughput × latency
Serial vs parallel portions of a request path
07
Availability, Reliability and Durability
1 sheet
Availability, Reliability and Durability
Availability, reliability and durability
Uptime "nines" and what they allow
The redundancy and recovery toolkit
Never claim high availability without ruling out single points of failure
08
SLIs, SLOs, SLAs and Error Budgets
1 sheet
SLIs, SLOs, SLAs and Error Budgets
SLI, SLO and SLA
Common SLIs: success rate, latency, queue age, freshness
Error budgets and release velocity
09
Basic Architecture Patterns
1 sheet
Basic Architecture Patterns
Three-tier architecture
Layered architecture
Modular monolith
Microservices
Event-driven architecture
Pipeline architecture
Understand pattern trade-offs, not universal superiority
10
Monolith vs Modular Monolith vs Microservices
1 sheet
Monolith vs Modular Monolith vs Microservices
Monolith advantages
Modular monolith advantages
Microservices advantages
Microservices costs
Know when not to split into microservices
11
Client-Server and API Gateways
1 sheet
Client-Server and API Gateways
Client-server topology
API gateway responsibilities
Do not overload the gateway with business logic
12
Load Balancing
1 sheet
Load Balancing
L4 vs L7 load balancing
Load balancing algorithms
Health checks, connection draining, sticky sessions and failover
Why stateless servers make horizontal scaling easier
13
Horizontal vs Vertical Scaling
1 sheet
Horizontal vs Vertical Scaling
Horizontal vs vertical scaling
Scaling trade-offs: limits, cost curves and operational complexity
Check statelessness before committing to horizontal scaling
14
Stateless Architecture
1 sheet
Stateless Architecture
Disposable application instances
Moving shared state out of the instance
Session management in distributed deployments
15
Database Fundamentals for System Design
1 sheet
Database Fundamentals for System Design
Choosing a data model at a system-design level
Polyglot persistence: multiple stores, each for a stated reason
When a transaction must span multiple services
16
Data Modeling
1 sheet
Data Modeling
Design around access patterns, not just object models
Entities, relationships and choosing an ID strategy
Soft delete, audit history, temporal data, status and versioning
21
Isolation Levels and Concurrency
1 sheet
Isolation Levels and Concurrency
The four SQL isolation levels
Dirty reads, non-repeatable reads, phantom reads and lost updates
Optimistic vs pessimistic concurrency control
Version columns, compare-and-set, unique constraints and row locks
22
Replication
1 sheet
Replication
Primary/replica architecture and sync vs async replication
Read replicas and the consistency implications
Why a just-written record may not appear on a lagging replica
23
Sharding and Partitioning
1 sheet
Sharding and Partitioning
Partitioning splits data within a database; sharding distributes it across instances
Choosing a shard key for distribution, locality and query patterns
Hot partitions, cross-shard queries and resharding
24
Caching Fundamentals
1 sheet
Caching Fundamentals
Why caching works: locality and avoiding repeated work
Cache-aside, read-through, write-through and write-back
TTL, eviction and invalidation
Cache warming and negative caching
25
Redis and Distributed Caching
1 sheet
Redis and Distributed Caching
What Redis is actually used for beyond caching
Redis data structures, atomicity and pipelines
Cache stampede, hot keys and memory pressure
26
CDN and Edge Caching
1 sheet
CDN and Edge Caching
CDN caching for static assets and cacheable responses
Cache-Control headers, TTLs, invalidation and signed URLs
Identifying content that is safe to cache vs user-specific content
27
Messaging and Queues
1 sheet
Messaging and Queues
Synchronous request/response vs asynchronous messaging
The queue vocabulary: producer, consumer, broker and the delivery mechanics
Using queues to decouple services, absorb bursts and move slow work off the request path
28
Kafka and Log-Based Messaging
1 sheet
Kafka and Log-Based Messaging
Topics, partitions, offsets and consumer groups
At-least-once, at-most-once and practical exactly-once
Replayable event logs and event-driven architecture
Partitioning is a scaling AND ordering decision
29
RabbitMQ and Traditional Message Brokers
1 sheet
RabbitMQ and Traditional Message Brokers
Exchanges, queues, routing keys and bindings
Acknowledgements, retries and dead-lettering in RabbitMQ
When a task queue is simpler than an event log
30
Delivery Semantics and Idempotency
1 sheet
Delivery Semantics and Idempotency
At-most-once, at-least-once, and why exactly-once is hard everywhere
Designing consumers to be idempotent
Idempotency keys, unique constraints, dedup tables and outbox/inbox
31
Retry Strategy
1 sheet
Retry Strategy
Retries can amplify outages if uncontrolled
Timeouts, exponential backoff and jitter
Differentiate transient errors from permanent errors
Set maximum attempts and dead-letter failed messages
Do not blindly retry non-idempotent operations
32
Timeouts and Resource Limits
1 sheet
Timeouts and Resource Limits
Connect, read and request deadlines are three different timeouts
The resource-limit checklist: queue depth, body size, concurrency, connections, memory
Timeout budgets must fit within the overall request latency budget
33
Circuit Breakers and Bulkheads
1 sheet
Circuit Breakers and Bulkheads
Why circuit breakers exist: stop hammering a failing dependency
The closed, open and half-open states
Bulkheads isolate resources so one workload cannot consume everything
Combining circuit breakers, bulkheads, timeouts and bounded retries
34
Eventual Consistency
1 sheet
Eventual Consistency
Why replicas, queues and distributed services temporarily disagree
Choosing eventual vs strong consistency per workflow
Using explicit states and user-visible status for async completion
35
Distributed Transactions
1 sheet
Distributed Transactions
Why cross-service ACID transactions are difficult
Two-phase commit, and why it is expensive and fragile
Preferring sagas, local transactions and compensating actions over 2PC
36
Saga Pattern
1 sheet
Saga Pattern
Choreography: services react to events, no central coordinator
Orchestration: one coordinator controls the workflow
Compensating actions per step, and the failure-handling reality of running a saga
37
Transactional Outbox and Inbox
1 sheet
Transactional Outbox and Inbox
What the outbox table itself needs to store, and why it is not a generic event log
The outbox relay: polling vs CDC, marking rows published, cleanup
The inbox pattern: recording processed event IDs
38
Distributed Locks
1 sheet
Distributed Locks
When distributed coordination is actually needed
Stale locks, crashes, lease expiration and clock assumptions
Prefer database uniqueness or atomic operations over a lock
39
Consistent Hashing
1 sheet
Consistent Hashing
What consistent hashing is for, and the ring concept
Virtual nodes and why they even out load
Adding or removing a node moves about 1/N of the keys
40
Consistency Models
1 sheet
Consistency Models
Strong, eventual, causal and read-your-writes consistency
Distributed stores trade consistency, availability and partition tolerance differently
CAP as a reasoning framework, not a slogan
41
CAP Theorem
1 sheet
CAP Theorem
What CAP actually says
CAP is not "pick 2 of 3, permanently"
A real system's CAP choice: leader-based CP vs. multi-writer AP
42
PACELC
1 sheet
PACELC
PACELC extends CAP to normal operation
Worked example: nearest-replica read vs quorum-ack write
Using PACELC as an evaluation checklist
43
Leader Election and Coordination
1 sheet
Leader Election and Coordination
Leader/follower roles, heartbeats and leases
Failover and the split-brain risk
Coordination systems: ZooKeeper, etcd and consensus
44
Consensus
1 sheet
Consensus
Why nodes need agreement under failures
The high-level purpose of Raft/Paxos-style consensus
Where consensus actually gets used in practice
45
Object Storage
1 sheet
Object Storage
The object storage model: buckets, keys, metadata, versioning
Multipart upload and signed URLs
Object storage instead of application servers for large files
46
Search Systems
1 sheet
Search Systems
When database search is insufficient
Inverted indexes, tokenization, analyzers and ranking
Search engines are specialized, not primary stores
47
Rate Limiting
1 sheet
Rate Limiting
Fixed window, sliding window, token bucket and leaky bucket
Distributed rate limiting needs shared state or edge-level controls
Choosing the right limit scope: user, IP, API key, endpoint
48
Quotas and Fairness
1 sheet
Quotas and Fairness
Hard quotas vs burst limits
The noisy-neighbor problem
Weighted fairness, per-tenant queues, and resource isolation
49
Real-Time Systems
1 sheet
Real-Time Systems
Polling, long polling, SSE and WebSockets
Six factors for choosing a real-time transport
Connection lifecycle and backpressure
50
WebSockets at Scale
1 sheet
WebSockets at Scale
Connection affinity and connection registries
Pub/sub or brokers for cross-instance fan-out
Connection lifecycle: reconnect, heartbeat/ping and authentication
51
Batch and Stream Processing
1 sheet
Batch and Stream Processing
Batch vs stream processing
Windowing, state, checkpointing and replay
Throughput, latency and backpressure in stream processing
52
Backpressure
1 sheet
Backpressure
What backpressure is and why it matters
Backpressure mechanisms: bounded queues, rate limits, flow control, batch size, consumer scaling
Monitoring backpressure: queue age and lag, not only queue length
53
File and Large Data Processing
1 sheet
File and Large Data Processing
Stream large files instead of loading them fully into memory
Multipart upload, chunking, asynchronous processing and progress tracking
Separate metadata from blobs
54
API Design
1 sheet
API Design
REST fundamentals: resources, HTTP semantics and status codes
Querying a collection: pagination, filtering, sorting and search
API versioning and backward compatibility
Cursor pagination vs offset pagination
Stable identifiers and explicit error contracts
55
API Gateway and BFF
1 sheet
API Gateway and BFF
API Gateway vs Backend-for-Frontend
Aggregation, authentication, throttling and response shaping
The gateway that became an untestable monolith
57
Authentication and Authorization
1 sheet
Authentication and Authorization
Authentication vs authorization: who is the caller, what can they do
Session/cookie auth vs token (JWT) auth
OAuth 2.0 and OpenID Connect: delegated authorization and identity
Machine-to-machine identity: API keys, mTLS and service-to-service auth
RBAC, ABAC, tenant isolation and object-level authorization
58
Security Architecture
1 sheet
Security Architecture
Security architecture principles: threat modeling to secure defaults
Secrets management, key rotation and audit logs
Common vulnerability classes: injection, access control and leakage
59
Encryption
1 sheet
Encryption
Encryption in transit (TLS) vs encryption at rest
Password hashing: why it is not encryption
Encryption keys: KMS/HSM, rotation and separation of duties
60
Multi-Tenancy
1 sheet
Multi-Tenancy
Tenancy models: shared schema, separate schema, separate database
Tenant isolation must be enforced at every access path
Noisy-neighbor prevention and quotas across the three tenancy models
61
Observability
1 sheet
Observability
Three pillars: logs, metrics and traces
Core signals: IDs, service names, latency, errors, saturation and dependencies
Tracing cross-service requests and asynchronous workflows
62
Monitoring and Alerting
1 sheet
Monitoring and Alerting
Symptom-based alerting: the six signals tied to user impact
Avoiding infrastructure-noise-only alerting
Health checks: readiness vs liveness, and synthetic monitoring
64
Disaster Recovery
1 sheet
Disaster Recovery
The DR toolkit: backups, point-in-time recovery, and multi-zone/multi-region deployment
RPO vs. RTO: the two numbers that define a DR strategy's guarantee
Testing backups and failover: an untested backup is not evidence of recoverability
65
High Availability
1 sheet
High Availability
Removing single points of failure across every layer
Active-active vs active-passive
Health checks, automatic failover and graceful degradation working together
66
Multi-Region Systems
1 sheet
Multi-Region Systems
The four real reasons to go multi-region
The cost of multi-region: eight compounding challenges
Do not go multi-region without a clear business reason
70
Cost-Aware Design
1 sheet
Cost-Aware Design
The cost surface: everything that bills money
Unit-cost estimation: per request, per GB, per user, per job
Right-sizing, not maximum scale
78
Rate of Change and Schema Evolution
1 sheet
Rate of Change and Schema Evolution
Versioning APIs and events carefully
Backward-compatible database changes
Rolling deployments: designing for coexisting versions
Event schema evolution and consumer compatibility
79
Event Ordering and Duplicate Handling
1 sheet
Event Ordering and Duplicate Handling
Why global ordering is expensive
Consumers must tolerate duplicates and out-of-order events
Timestamps, sequence numbers and version checks
80
Distributed Time and Clocks
1 sheet
Distributed Time and Clocks
Wall-clock time can move; process clocks drift
Do not rely on local timestamps for global ordering
UTC, monotonic clocks and logical ordering
82
Payment System Design
1 sheet
Payment System Design
Idempotency keys, immutable records, explicit states, webhooks, reconciliation
A frontend redirect is not proof that a payment completed
Separating payment state from order and fulfilment state
96
Data Warehouse vs Operational Database
1 sheet
Data Warehouse vs Operational Database
OLTP: frequent small transactions and strong integrity
OLAP: scans, aggregations and large datasets
Keeping heavy reporting off the transactional database
97
Search vs Database
1 sheet
Search vs Database
When a database index is the right tool
When a search engine is the right tool
One system of record per fact, and how the copies stay in step
99
High-Level Design vs Low-Level Design
1 sheet
High-Level Design vs Low-Level Design
What belongs in a high-level design
What belongs in a low-level design
Moving between levels without mixing them
105
Practical Projects
1 sheet
Practical Projects
Project 1 — URL shortener
Project 2 — Notification platform
Project 3 — File processing platform
Project 4 — E-commerce order system
Project 5 — Chat platform
Project 6 — Multi-tenant SaaS platform
Project 7 — Search platform
Project 8 — Distributed rate limiter
107
Priority Roadmap
1 sheet
Priority Roadmap
Tier 1 — the sixteen to master
Tier 2 — strong working knowledge
Tier 3 — conceptual and specialized
109
Final Senior-Level Standard
1 sheet
Final Senior-Level Standard
"How do I implement this feature?"
"What architecture and technology should I use?"
Seven inputs, and the simplest design that satisfies them
01
System Design Fundamentals
1 sheet
System Design Fundamentals
What system design actually is
Core vocabulary: the terms every later section assumes
Product requirements vs engineering requirements
Architecture vs detailed design vs implementation vs operations
04
Capacity Estimation
1 sheet
Capacity Estimation
What to estimate before designing
The core capacity formulas
Reads, writes, cache hits and growth
Powers-of-ten approximation
From estimate to infrastructure
08
SLIs, SLOs, SLAs and Error Budgets
1 sheet
SLIs, SLOs, SLAs and Error Budgets
SLI, SLO and SLA
Common SLIs: success rate, latency, queue age, freshness
Error budgets and release velocity
10
Monolith vs Modular Monolith vs Microservices
1 sheet
Monolith vs Modular Monolith vs Microservices
Monolith advantages
Modular monolith advantages
Microservices advantages
Microservices costs
Know when not to split into microservices
14
Stateless Architecture
1 sheet
Stateless Architecture
Disposable application instances
Moving shared state out of the instance
Session management in distributed deployments
21
Isolation Levels and Concurrency
1 sheet
Isolation Levels and Concurrency
The four SQL isolation levels
Dirty reads, non-repeatable reads, phantom reads and lost updates
Optimistic vs pessimistic concurrency control
Version columns, compare-and-set, unique constraints and row locks
24
Caching Fundamentals
1 sheet
Caching Fundamentals
Why caching works: locality and avoiding repeated work
Cache-aside, read-through, write-through and write-back
TTL, eviction and invalidation
Cache warming and negative caching
27
Messaging and Queues
1 sheet
Messaging and Queues
Synchronous request/response vs asynchronous messaging
The queue vocabulary: producer, consumer, broker and the delivery mechanics
Using queues to decouple services, absorb bursts and move slow work off the request path
30
Delivery Semantics and Idempotency
1 sheet
Delivery Semantics and Idempotency
At-most-once, at-least-once, and why exactly-once is hard everywhere
Designing consumers to be idempotent
Idempotency keys, unique constraints, dedup tables and outbox/inbox
33
Circuit Breakers and Bulkheads
1 sheet
Circuit Breakers and Bulkheads
Why circuit breakers exist: stop hammering a failing dependency
The closed, open and half-open states
Bulkheads isolate resources so one workload cannot consume everything
Combining circuit breakers, bulkheads, timeouts and bounded retries
36
Saga Pattern
1 sheet
Saga Pattern
Choreography: services react to events, no central coordinator
Orchestration: one coordinator controls the workflow
Compensating actions per step, and the failure-handling reality of running a saga
39
Consistent Hashing
1 sheet
Consistent Hashing
What consistent hashing is for, and the ring concept
Virtual nodes and why they even out load
Adding or removing a node moves about 1/N of the keys
42
PACELC
1 sheet
PACELC
PACELC extends CAP to normal operation
Worked example: nearest-replica read vs quorum-ack write
Using PACELC as an evaluation checklist
45
Object Storage
1 sheet
Object Storage
The object storage model: buckets, keys, metadata, versioning
Multipart upload and signed URLs
Object storage instead of application servers for large files
48
Quotas and Fairness
1 sheet
Quotas and Fairness
Hard quotas vs burst limits
The noisy-neighbor problem
Weighted fairness, per-tenant queues, and resource isolation
51
Batch and Stream Processing
1 sheet
Batch and Stream Processing
Batch vs stream processing
Windowing, state, checkpointing and replay
Throughput, latency and backpressure in stream processing
54
API Design
1 sheet
API Design
REST fundamentals: resources, HTTP semantics and status codes
Querying a collection: pagination, filtering, sorting and search
API versioning and backward compatibility
Cursor pagination vs offset pagination
Stable identifiers and explicit error contracts
58
Security Architecture
1 sheet
Security Architecture
Security architecture principles: threat modeling to secure defaults
Secrets management, key rotation and audit logs
Common vulnerability classes: injection, access control and leakage
61
Observability
1 sheet
Observability
Three pillars: logs, metrics and traces
Core signals: IDs, service names, latency, errors, saturation and dependencies
Tracing cross-service requests and asynchronous workflows
65
High Availability
1 sheet
High Availability
Removing single points of failure across every layer
Active-active vs active-passive
Health checks, automatic failover and graceful degradation working together
78
Rate of Change and Schema Evolution
1 sheet
Rate of Change and Schema Evolution
Versioning APIs and events carefully
Backward-compatible database changes
Rolling deployments: designing for coexisting versions
Event schema evolution and consumer compatibility
82
Payment System Design
1 sheet
Payment System Design
Idempotency keys, immutable records, explicit states, webhooks, reconciliation
A frontend redirect is not proof that a payment completed
Separating payment state from order and fulfilment state
99
High-Level Design vs Low-Level Design
1 sheet
High-Level Design vs Low-Level Design
What belongs in a high-level design
What belongs in a low-level design
Moving between levels without mixing them
109
Final Senior-Level Standard
1 sheet
Final Senior-Level Standard
"How do I implement this feature?"
"What architecture and technology should I use?"
Seven inputs, and the simplest design that satisfies them
02
Functional vs Non-Functional Requirements
1 sheet
Functional vs Non-Functional Requirements
Functional requirements, in full
The eleven non-functional categories
Turning vague requirements into measurable targets
Worked numeric examples
05
Back-of-the-Envelope Math
1 sheet
Back-of-the-Envelope Math
What a back-of-the-envelope estimate covers
The unit conversions every estimate depends on
Peak-to-average ratios and growth over time
Knowing which assumptions dominate the result
07
Availability, Reliability and Durability
1 sheet
Availability, Reliability and Durability
Availability, reliability and durability
Uptime "nines" and what they allow
The redundancy and recovery toolkit
Never claim high availability without ruling out single points of failure
11
Client-Server and API Gateways
1 sheet
Client-Server and API Gateways
Client-server topology
API gateway responsibilities
Do not overload the gateway with business logic
13
Horizontal vs Vertical Scaling
1 sheet
Horizontal vs Vertical Scaling
Horizontal vs vertical scaling
Scaling trade-offs: limits, cost curves and operational complexity
Check statelessness before committing to horizontal scaling
16
Data Modeling
1 sheet
Data Modeling
Design around access patterns, not just object models
Entities, relationships and choosing an ID strategy
Soft delete, audit history, temporal data, status and versioning
23
Sharding and Partitioning
1 sheet
Sharding and Partitioning
Partitioning splits data within a database; sharding distributes it across instances
Choosing a shard key for distribution, locality and query patterns
Hot partitions, cross-shard queries and resharding
26
CDN and Edge Caching
1 sheet
CDN and Edge Caching
CDN caching for static assets and cacheable responses
Cache-Control headers, TTLs, invalidation and signed URLs
Identifying content that is safe to cache vs user-specific content
29
RabbitMQ and Traditional Message Brokers
1 sheet
RabbitMQ and Traditional Message Brokers
Exchanges, queues, routing keys and bindings
Acknowledgements, retries and dead-lettering in RabbitMQ
When a task queue is simpler than an event log
32
Timeouts and Resource Limits
1 sheet
Timeouts and Resource Limits
Connect, read and request deadlines are three different timeouts
The resource-limit checklist: queue depth, body size, concurrency, connections, memory
Timeout budgets must fit within the overall request latency budget
34
Eventual Consistency
1 sheet
Eventual Consistency
Why replicas, queues and distributed services temporarily disagree
Choosing eventual vs strong consistency per workflow
Using explicit states and user-visible status for async completion
37
Transactional Outbox and Inbox
1 sheet
Transactional Outbox and Inbox
What the outbox table itself needs to store, and why it is not a generic event log
The outbox relay: polling vs CDC, marking rows published, cleanup
The inbox pattern: recording processed event IDs
40
Consistency Models
1 sheet
Consistency Models
Strong, eventual, causal and read-your-writes consistency
Distributed stores trade consistency, availability and partition tolerance differently
CAP as a reasoning framework, not a slogan
43
Leader Election and Coordination
1 sheet
Leader Election and Coordination
Leader/follower roles, heartbeats and leases
Failover and the split-brain risk
Coordination systems: ZooKeeper, etcd and consensus
46
Search Systems
1 sheet
Search Systems
When database search is insufficient
Inverted indexes, tokenization, analyzers and ranking
Search engines are specialized, not primary stores
49
Real-Time Systems
1 sheet
Real-Time Systems
Polling, long polling, SSE and WebSockets
Six factors for choosing a real-time transport
Connection lifecycle and backpressure
52
Backpressure
1 sheet
Backpressure
What backpressure is and why it matters
Backpressure mechanisms: bounded queues, rate limits, flow control, batch size, consumer scaling
Monitoring backpressure: queue age and lag, not only queue length
55
API Gateway and BFF
1 sheet
API Gateway and BFF
API Gateway vs Backend-for-Frontend
Aggregation, authentication, throttling and response shaping
The gateway that became an untestable monolith
59
Encryption
1 sheet
Encryption
Encryption in transit (TLS) vs encryption at rest
Password hashing: why it is not encryption
Encryption keys: KMS/HSM, rotation and separation of duties
62
Monitoring and Alerting
1 sheet
Monitoring and Alerting
Symptom-based alerting: the six signals tied to user impact
Avoiding infrastructure-noise-only alerting
Health checks: readiness vs liveness, and synthetic monitoring
66
Multi-Region Systems
1 sheet
Multi-Region Systems
The four real reasons to go multi-region
The cost of multi-region: eight compounding challenges
Do not go multi-region without a clear business reason
79
Event Ordering and Duplicate Handling
1 sheet
Event Ordering and Duplicate Handling
Why global ordering is expensive
Consumers must tolerate duplicates and out-of-order events
Timestamps, sequence numbers and version checks
96
Data Warehouse vs Operational Database
1 sheet
Data Warehouse vs Operational Database
OLTP: frequent small transactions and strong integrity
OLAP: scans, aggregations and large datasets
Keeping heavy reporting off the transactional database
105
Practical Projects
1 sheet
Practical Projects
Project 1 — URL shortener
Project 2 — Notification platform
Project 3 — File processing platform
Project 4 — E-commerce order system
Project 5 — Chat platform
Project 6 — Multi-tenant SaaS platform
Project 7 — Search platform
Project 8 — Distributed rate limiter
03
Requirements Clarification
1 sheet
Requirements Clarification
What to identify before drawing boxes
Naming the traffic shape
Drawing the consistency boundary
Drawing the synchronous boundary
06
Latency and Throughput
1 sheet
Latency and Throughput
Latency vs throughput
Percentile latency: p50, p90, p95, p99, p99.9
Why averages hide tail latency problems
Little's Law: concurrency ≈ throughput × latency
Serial vs parallel portions of a request path
09
Basic Architecture Patterns
1 sheet
Basic Architecture Patterns
Three-tier architecture
Layered architecture
Modular monolith
Microservices
Event-driven architecture
Pipeline architecture
Understand pattern trade-offs, not universal superiority
12
Load Balancing
1 sheet
Load Balancing
L4 vs L7 load balancing
Load balancing algorithms
Health checks, connection draining, sticky sessions and failover
Why stateless servers make horizontal scaling easier
15
Database Fundamentals for System Design
1 sheet
Database Fundamentals for System Design
Choosing a data model at a system-design level
Polyglot persistence: multiple stores, each for a stated reason
When a transaction must span multiple services
22
Replication
1 sheet
Replication
Primary/replica architecture and sync vs async replication
Read replicas and the consistency implications
Why a just-written record may not appear on a lagging replica
25
Redis and Distributed Caching
1 sheet
Redis and Distributed Caching
What Redis is actually used for beyond caching
Redis data structures, atomicity and pipelines
Cache stampede, hot keys and memory pressure
28
Kafka and Log-Based Messaging
1 sheet
Kafka and Log-Based Messaging
Topics, partitions, offsets and consumer groups
At-least-once, at-most-once and practical exactly-once
Replayable event logs and event-driven architecture
Partitioning is a scaling AND ordering decision
31
Retry Strategy
1 sheet
Retry Strategy
Retries can amplify outages if uncontrolled
Timeouts, exponential backoff and jitter
Differentiate transient errors from permanent errors
Set maximum attempts and dead-letter failed messages
Do not blindly retry non-idempotent operations
35
Distributed Transactions
1 sheet
Distributed Transactions
Why cross-service ACID transactions are difficult
Two-phase commit, and why it is expensive and fragile
Preferring sagas, local transactions and compensating actions over 2PC
38
Distributed Locks
1 sheet
Distributed Locks
When distributed coordination is actually needed
Stale locks, crashes, lease expiration and clock assumptions
Prefer database uniqueness or atomic operations over a lock
41
CAP Theorem
1 sheet
CAP Theorem
What CAP actually says
CAP is not "pick 2 of 3, permanently"
A real system's CAP choice: leader-based CP vs. multi-writer AP
44
Consensus
1 sheet
Consensus
Why nodes need agreement under failures
The high-level purpose of Raft/Paxos-style consensus
Where consensus actually gets used in practice
47
Rate Limiting
1 sheet
Rate Limiting
Fixed window, sliding window, token bucket and leaky bucket
Distributed rate limiting needs shared state or edge-level controls
Choosing the right limit scope: user, IP, API key, endpoint
50
WebSockets at Scale
1 sheet
WebSockets at Scale
Connection affinity and connection registries
Pub/sub or brokers for cross-instance fan-out
Connection lifecycle: reconnect, heartbeat/ping and authentication
53
File and Large Data Processing
1 sheet
File and Large Data Processing
Stream large files instead of loading them fully into memory
Multipart upload, chunking, asynchronous processing and progress tracking
Separate metadata from blobs
57
Authentication and Authorization
1 sheet
Authentication and Authorization
Authentication vs authorization: who is the caller, what can they do
Session/cookie auth vs token (JWT) auth
OAuth 2.0 and OpenID Connect: delegated authorization and identity
Machine-to-machine identity: API keys, mTLS and service-to-service auth
RBAC, ABAC, tenant isolation and object-level authorization
60
Multi-Tenancy
1 sheet
Multi-Tenancy
Tenancy models: shared schema, separate schema, separate database
Tenant isolation must be enforced at every access path
Noisy-neighbor prevention and quotas across the three tenancy models
64
Disaster Recovery
1 sheet
Disaster Recovery
The DR toolkit: backups, point-in-time recovery, and multi-zone/multi-region deployment
RPO vs. RTO: the two numbers that define a DR strategy's guarantee
Testing backups and failover: an untested backup is not evidence of recoverability
70
Cost-Aware Design
1 sheet
Cost-Aware Design
The cost surface: everything that bills money
Unit-cost estimation: per request, per GB, per user, per job
Right-sizing, not maximum scale
80
Distributed Time and Clocks
1 sheet
Distributed Time and Clocks
Wall-clock time can move; process clocks drift
Do not rely on local timestamps for global ordering
UTC, monotonic clocks and logical ordering
97
Search vs Database
1 sheet
Search vs Database
When a database index is the right tool
When a search engine is the right tool
One system of record per fact, and how the copies stay in step
107
Priority Roadmap
1 sheet
Priority Roadmap
Tier 1 — the sixteen to master
Tier 2 — strong working knowledge
Tier 3 — conceptual and specialized