Skip to content

Vinayak9769/System-Design

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

System Design Notes

A collection of practical system design and distributed systems notes focused on scalability, reliability, and real-world backend engineering.

The goal of this repository is to document:

  • system design concepts
  • scalability patterns
  • infrastructure tradeoffs
  • distributed systems fundamentals
  • other personal learnings! :)
  • and of course LLD/HLD questions

These notes are written primarily for personal reference and interview preperation


Topics to be covered (Hopefully)

Fundamentals

  • Load Balancing
  • Caching
  • Database Scaling
  • Replication vs Sharding
  • CAP Theorem
  • Consistent Hashing

Scalability

  • Rate Limiting
  • CDN Architecture
  • Queue Systems
  • Backpressure Handling
  • Autoscaling

Distributed Systems

  • Consensus Algorithms
  • Leader Election
  • Eventual Consistency
  • Distributed Locks
  • Gossip Protocols

Problems

  • Rate Limiter
  • Consistent Hashing
  • Key-Value Store
  • Distributed Unique ID Generator
  • URL Shortener
  • Web Crawler
  • Notification System
  • News Feed System
  • Chat System
  • Search Autocomplete System
  • YouTube
  • Google Drive
  • Video Streaming Platforms
  • Ride Sharing Systems

Observability (Future Addition)

  • Metrics
  • Logging
  • Tracing
  • Monitoring Pipelines

References

References used across notes may include:

  • engineering blogs
  • System Design Interview: An Insider’s Guide by Alex Xu

About

Personal System Design Notes! :)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors