System design
Learning paths
Topics
Roadmaps
Games
Search articles, topics...
⌘K
Library
Topics
API design
The contract between services: styles, keys, retries and versions.
Path
System design
Articles
Level
Foundation
Core
Senior
Staff
Design questions only
Patterns
Hot key
Admit at the door
Narrow
Reliability
1
Load balancing
1
Networking
2
Caching
1
SQL
1
Queues and streams
1
Real-time
1
Identity and auth
2
Rate limiting and overload
1
Payments
1
10 pages
API design
System design · Core · 11 min
Networking
Design a rate limiter
System design · Core · 28 min
Rate limiting and overload
Caching
OAuth 2.0 flows
Articles · Core · 9 min
Identity and auth
API keys vs OAuth vs mTLS
Articles · Core · 10 min
Identity and auth
Proxy vs reverse proxy vs gateway
Articles · Foundation · 9 min
Networking
Load balancing
REST vs GraphQL vs gRPC
Articles · Core · 8 min
Idempotency keys
Articles · Core · 9 min
Reliability
Payments
Webhooks vs polling
Articles · Core · 8 min
Real-time
Offset vs cursor pagination
Articles · Core · 10 min
SQL
Backward vs forward compatibility
Articles · Senior · 12 min
Queues and streams