System Design
# Distributed systems, scalability, system-level architecture.
❯ cat documents/
-
System design fundamentals
Concept
2026-08-08
The recurring building blocks of designing systems at scale — load balancing, replication, partitioning, consistency, and the trade-off vocabulary.
-
Cache management
Concept
2026-08-08
Caching strategies, invalidation, eviction, and the failure modes — from CPU lines to CDNs and distributed caches.
-
Asynchronous and distributed system patterns
Concept
2026-08-08
The pattern language of async and distributed systems — messaging, sagas, outbox, idempotency, retries, and delivery guarantees.
-
Microservice architecture
Concept
2026-08-08
Decomposing a system into independently deployable services — when it pays, what it costs, and the patterns that make it survivable.
-
API design
Concept
2026-08-08
Designing service contracts — REST done properly, gRPC, GraphQL, versioning, and evolving APIs without breaking consumers.
-
API documentation
Concept
2026-08-09
The contract-artifact formats — OpenAPI, AsyncAPI, protobuf, GraphQL SDL — and the generate-doc-from-code vs generate-code-from-doc trade, with integration notes per Java, Go and Rust ecosystem.
-
Message brokers & event streaming
Concept
2026-08-08
Kafka internals and the broker landscape — logs vs. queues, partitions, consumer groups, replication, and exactly-once semantics.
-
Performance engineering
Concept
2026-08-08
Measuring before guessing — profiling, benchmarking methodology, mechanical sympathy, and a shared vocabulary from CPU cache to p99.
-
WebSockets & bidirectional protocols
Concept
2026-08-08
Pushing data to clients — WebSockets, SSE, long polling, WebTransport, gRPC streaming, webhooks — and how to choose and scale them.
-
Distributed consensus
Concept
2026-08-08
How machines agree — Raft, quorums, leader election, and what consensus does (and refuses to do) for the systems built on it.
-
Rate limiting & idempotency
Concept
2026-08-08
The two guardrails of a public API — bounding request rates without unfairness, and making retries safe by design.
-
Search systems
Concept
2026-08-08
How full-text search works — inverted indexes, analysis, relevance scoring, and operating Elasticsearch-class systems next to your database.
❯ tree collections/
-
Concurrency and Parallelism/
2 items
Core concepts governing how programs execute multiple tasks simultaneously, and the trade-offs between competing approaches.
-
Exercises/
6 items
Practice material for the theme: multi-milestone build projects mapped onto its concept notes.