← Back to all products
$19
System Design Visual Guide
Architecture diagrams for 25+ common systems: URL shortener, chat app, rate limiter, distributed cache, and notification service.
MarkdownJSONYAML
📄 Product Preview
Try the interactive reader and demo tools below, or get the full product with all content unlocked.
📖 Interactive Reader (Free Preview) ⚙ Try Demo Tools 📦 Download Free Sample📁 File Structure 7 files
system-design-visual-guide/
├── LICENSE
├── README.md
├── config.example.yaml
├── docs/
│ ├── checklists/
│ │ └── pre-deployment.md
│ ├── overview.md
│ └── patterns/
│ └── pattern-01-standard.md
└── templates/
└── config.yaml
📖 Documentation Preview README excerpt
System Design Visual Guide
26 classic system designs with ASCII architecture diagrams, component breakdowns, data flows, scaling strategies, and trade-off analysis. Built for engineers preparing for design interviews or architecting production systems.
Who This Is For
- Software engineers preparing for system design interviews at top tech companies
- Backend/platform engineers designing new systems from scratch
- Tech leads running design reviews who need a quick reference for standard patterns
- Architects who want a checklist of scaling concerns for common system types
What's Inside
System Design Files
| # | File | System | Key Patterns |
|---|---|---|---|
| 1 | cheatsheets/01-url-shortener.md | URL Shortener | Base62 encoding, read-heavy caching, 301 vs 302 |
| 2 | cheatsheets/02-paste-bin.md | Paste Bin | Object storage, TTL expiry, content hashing |
| 3 | cheatsheets/03-rate-limiter.md | Rate Limiter | Token bucket, sliding window, distributed counters |
| 4 | cheatsheets/04-chat-application.md | Chat Application | WebSockets, fan-out, presence, message ordering |
| 5 | cheatsheets/05-notification-service.md | Notification Service | Priority queues, multi-channel delivery, retry |
| 6 | cheatsheets/06-distributed-cache.md | Distributed Cache | Consistent hashing, eviction, cache-aside vs write-through |
| 7 | cheatsheets/07-load-balancer.md | Load Balancer | L4 vs L7, health checks, sticky sessions |
| 8 | cheatsheets/08-web-crawler.md | Web Crawler | URL frontier, politeness, deduplication |
| 9 | cheatsheets/09-newsfeed-system.md | News Feed | Fan-out on write vs read, ranking, pagination |
| 10 | cheatsheets/10-search-autocomplete.md | Search Autocomplete | Trie, prefix matching, frequency ranking |
| 11 | cheatsheets/11-file-storage-service.md | File Storage Service | Chunking, dedup, metadata DB, CDN |
| 12 | cheatsheets/12-video-streaming.md | Video Streaming | Transcoding pipeline, adaptive bitrate, CDN |
| 13 | cheatsheets/13-distributed-message-queue.md | Message Queue | Partitioning, consumer groups, ordering guarantees |
| 14 | cheatsheets/14-key-value-store.md | Key-Value Store | LSM trees, WAL, replication, consistent hashing |
| 15 | cheatsheets/15-unique-id-generator.md | Unique ID Generator | Snowflake, UUID, clock skew, coordination-free |
| 16 | cheatsheets/16-payment-system.md | Payment System | Idempotency, double-entry, reconciliation |
| 17 | cheatsheets/17-authentication-service.md | Auth Service | JWT, OAuth2, session management, MFA |
| 18 | cheatsheets/18-email-service.md | Email Sending Service | Queue-based delivery, bounce handling, rate limiting |
| 19 | cheatsheets/19-logging-monitoring.md | Logging & Monitoring | Log aggregation, metrics pipeline, alerting |
| 20 | cheatsheets/20-cdn.md | Content Delivery Network | Edge caching, origin shielding, cache invalidation |
| 21 | cheatsheets/21-api-gateway.md | API Gateway | Routing, auth, throttling, request transformation |
| 22 | cheatsheets/22-task-scheduler.md | Task Scheduler | Cron, job locking, dead letter queues |
| 23 | cheatsheets/23-social-graph.md | Social Graph | Adjacency lists, graph DB, fan-out, mutual friends |
| 24 | cheatsheets/24-geolocation-service.md | Nearby Search | Geohashing, quadtrees, spatial indexing |
| 25 | cheatsheets/25-recommendation-engine.md | Recommendations | Collaborative filtering, feature store, A/B testing |
| 26 | cheatsheets/26-ticket-booking.md | Ticket Booking | Seat locking, optimistic concurrency, waitlists |
Examples
| File | Description |
|---|---|
examples/sample-architecture-spec.md | A filled-in architecture design document for a real system |
examples/capacity-estimation-template.md | Back-of-envelope estimation worksheet with formulas |
Printable View
| File | Description |
|---|---|
cheatsheet.html | Self-contained HTML — open in browser, print to PDF |
How to Use
1. Interview prep: Work through each system in order. Try drawing the diagram yourself first, then compare.
... continues with setup instructions, usage examples, and more.
📄 Content Sample cheatsheets/01-url-shortener.md
System Design: URL Shortener
Requirements
Functional: Shorten a long URL into a compact short URL. Redirect short URL to the original. Optional: custom aliases, expiration, analytics (click count).
Non-Functional: Low latency redirection (< 50ms). High availability (99.99%). Read-heavy (100:1 read:write ratio). Short URLs must be unique and unpredictable.
Capacity Estimation
| Metric | Value |
|---|---|
| New URLs/month | 100M |
| Reads/month | 10B (100:1 ratio) |
| Write QPS | ~40 |
| Read QPS | ~4,000 (peak: ~8,000) |
| Storage/URL | ~500 bytes (URL + metadata) |
| Storage/year | ~600 GB |
| Short code length | 7 characters (Base62 = 62^7 = 3.5 trillion combinations) |
Architecture Diagram
Client Analytics
│ Pipeline
│ POST /shorten {"url": "https://..."} │
▼ │
┌────────┐ ┌──────────────┐ ┌───────────────┐ │
│ Load │────►│ API Server │────►│ Key Gen │ │
│Balancer│ │ (Stateless) │ │ Service │ │
└───┬────┘ └──────┬───────┘ │ (Pre-generate │ │
│ │ │ Base62 keys) │ │
│ │ └───────────────┘ │
│ ▼ │
│ ┌──────────────┐ │
│ │ Database │ │
│ │ (Key→URL │ │
│ │ mapping) │ │
│ └──────────────┘ │
│ ▲ │
│ │ cache miss │
│ GET /:code │ │
▼ │ │
┌────────┐ ┌──────┴───────┐ ┌───────────────┐ │
│ Load │────►│ Redirect │────►│ Cache │ │
│Balancer│ │ Service │ │ (Redis) │ │
└────────┘ │ (Stateless) │ │ Hot URLs │ │
└──────────────┘ └───────────────┘ │
*... and much more in the full download.*