- Attachments
An index of PDF references and diagrams attached to the system design notes, from TinyURL designs to VietQR and Discord compression charts.
- Edit History Backup
Community discussion on storing document edit history using versioned diffs with periodic full snapshots, plus comparisons to persistent segment trees, ropes, and git blobs.
- Fundamentals
An overview of system design fundamentals: the CAP consistency-availability trade-off, eight common problems with standard solutions, and a curated list of learning references.
- Non Functional Requirements
Defines non-functional requirements and capabilities, and lists the steps to gather requirements before building an application.
- Overview
A table of contents for the system design notes, covering fundamentals, software architecture, technical solutions, resilience patterns, and attachments.
- Reference Code
A pointer to a sample backend blog application on GitHub for studying application architecture.
- Retry And Circuit Breaker
Covers retry with gradual backoff, the Circuit Breaker pattern, distributed transaction techniques such as SAGA, and the Outbox pattern for reliable messaging.
- Software Architecture
A survey of software architecture patterns (Clean, Hexagonal, Microservices, EDA, DDD, CQRS, LMAX, MVC family) and design principles (SOLID, DRY, AOP, Command Bus), with references and examples.
- Technical Solutions
A curated catalog of detailed technical solutions and case studies, from JWT revocation, caching, and background jobs to TinyURL, ID generation, rate limiting, migrations, and scaling for traffic spikes.