v1.0 • 5+ notes • 15 total

System Design Notes

Curated notes on distributed systems, architecture patterns, and system design fundamentals. Built for engineers who want to understand the why behind the how.

Categories

Explore notes organized by topic

System Design Fundamentals

Scalability, availability, consistency, and trade-offs

5 5 notes

Architecture Patterns

Microservices, event-driven, CQRS, and patterns

2 2 notes

Databases

SQL vs NoSQL, indexing, transactions, sharding

2 2 notes

Distributed Systems

Consensus, replication, partitioning, and fault tolerance

2 2 notes

Messaging

Message queues, event streaming, pub/sub

2 2 notes

Caching

Cache strategies, invalidation, CDN, Redis

1 1 note

Case Studies

Real-world architectures from tech companies

1 1 note

Recent Notes

Latest additions to the knowledge base

A practical comparison of monolithic and microservice architectures — coupling, deployment, scaling, team context — and how to choose between them.

8 min read

Database Sharding

Horizontal partitioning of a database into independent shards — shard key selection, routing, replication with failover, and the operational costs.

9 min read

Event-Driven Architecture

Communicating through immutable, persisted events — replayability, idempotency, event sourcing, CQRS, and the trade-offs of eventual consistency.

How message queues decouple producers from consumers, survive worker crashes with retries and reassignment, and form the basis of pub-sub and event-driven systems.

How globally distributed edge servers cut latency for static content, the cache hit/miss flow, and invalidation strategies.

Stay Updated

Get notified when new notes are published. No spam, unsubscribe anytime.

Also available via RSS