Skip to content

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

38 Commits

Folders and files

Repository files navigation

System Design Learning Journey

Welcome to my System Design repository! 🚀

This repository serves as my personal knowledge base and a collection of my own findings as I dive deep into system design concepts, architectures, and best practices.


📌 Table of Contents


📖 Introduction

Understanding system design is crucial for software engineers, especially when building products that scale. This repository documents my personal notes, diagrams, and late-night findings as I explore the vast landscape of distributed systems. Think of it as my engineering diary and study guide.

As I progress through my learning journey, I will continue updating this repository with new deep dives and sample implementations.


🏗 Topics Covered

Currently, I am deep-diving into the following topics:

  • Fundamentals: The core building blocks of the internet (DNS, TCP/UDP, APIs, and the CAP Theorem).
  • Caching: A deep dive into distributed caching (Redis/Memcached), architectural patterns, eviction policies, invalidation limits, and production failure modes.
  • Real-Time Backend: An extensive guide on persistent connections from Polling and Server-Sent Events to WebSocket protocols, Redis Pub/Sub Backplanes, presence systems, and distributed scaling.
  • Scaling: Strategies for horizontal vs. vertical scaling, stateless architecture, and database replication/sharding.
  • Databases: Deep dives into SQL (PostgreSQL, SQLite), NoSQL (MongoDB), and Wide-Column (Cassandra) distributed storage engines.
  • Load Balancing: Layer 4 vs. Layer 7 routing, routing algorithms, health checks, and failover mechanisms.
  • Content Delivery Networks (CDN): Architectural deep dive into Edge Computing, Anycast routing, Cache-Control headers, multi-CDN redundancy, and Origin shielding.

💻 Projects

To tie these theoretical concepts back to actual implementation, I am building practical, real-world backend applications. You can explore the source code, architecture breakdowns, and concurrent designs for these systems here:


🤝 Contributing / Feedback

If you have any suggestions, spot any mistakes, or want to collaborate, feel free to open an issue or reach out to me! Let's learn and build scalable systems together.

Happy Learning! 🌟

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors