This article contains a list of the top 5 GitHub repositories that will help you to achieve system design mastery.
These repositories mainly contain tutorials, blogs, videos and case studies related to system design
Make sure to visit these repositories, explore the contents, implement the learnings, contribute if you can and give them a ⭐ to help them grow.
System design ⚙️ is the process of designing the architecture, components, interfaces, and data for a particular system to meet specific requirements.
Before building any application or system, 🏗️ it is important to plan how the system will work, what resources will be needed, where to deploy it, which APIs the system components will use, and how to scale the system. Therefore, system design concepts are very important for software developers to master to build efficient and scalable systems. 💯
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
Community driven roadmaps, articles and resources for developers
Roadmaps are now interactive, you can click the nodes to read more about the topics.
Here is the list of available roadmaps with more being actively worked upon.
- Frontend Roadmap / Frontend Beginner Roadmap
- Backend Roadmap
- DevOps Roadmap / DevOps Beginner Roadmap
- Full Stack Roadmap
- Computer Science Roadmap
- AI and Data Scientist Roadmap
- QA Roadmap
- Python Roadmap
- Software Architect Roadmap
- Game Developer Roadmap / Server Side Game Developer
- Software Design and Architecture Roadmap
- TypeScript Roadmap
- C++ Roadmap
- React Roadmap
- React Native Roadmap
- Vue Roadmap
- Angular Roadmap
- Node.js Roadmap
- GraphQL Roadmap
- Android Roadmap
- Flutter Roadmap
- Go Roadmap
- Rust Roadmap
- Java Roadmap
- Spring Boot Roadmap
- Design System Roadmap
- PostgreSQL Roadmap
- SQL Roadmap
- Blockchain Roadmap
- ASP.NET Core Roadmap
- System Design Roadmap
- Kubernetes Roadmap
- Cyber Security Roadmap
- MongoDB Roadmap
- UX Design Roadmap
- Docker Roadmap
developer roadmap The GitHub repository is built and maintained by Kamran Ahmed and this repository can be considered the best handbook for software development
It has 255k stars on Git Hub and 684 contributors. This repository is only available in English and it contains a structured roadmap for everything along with resources, guides, etc.
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
English ∙ 日本語 ∙ 简体中文 ∙ 繁體中文 | العَرَبِيَّة ∙ বাংলা ∙ Português do Brasil ∙ Deutsch ∙ ελληνικά ∙ עברית ∙ Italiano ∙ 한국어 ∙ فارسی ∙ Polski ∙ русский язык ∙ Español ∙ ภาษาไทย ∙ Türkçe ∙ tiếng Việt ∙ Français | Add Translation
Help translate this guide!
The System Design Primer
Learn how to design large-scale systems.
Prep for the system design interview.
Learn how to design large-scale systems
Learning how to design scalable systems will help you become a better engineer.
System design is a broad topic. There is a vast amount of resources scattered throughout the web on system design principles.
This repo is an organized collection of resources to help you learn how to build systems at scale.
Learn from the open source community
This is a continually updated, open source project.
Contributions are welcome!
Prep for the system design interview
Sytem Design Primer GitHub repository was created by a tech Lead at Facebook (now Meta). This repository can be considered the bible of system design
It has 233k stars on GitHub and 100+ contributors and is available in many different languages.
Explain complex systems using visuals and simple terms. Help you prepare for system design interviews.
System Design 101
Explain complex systems using visuals and simple terms.
Whether you're preparing for a System Design Interview or you simply want to understand how systems work beneath the surface, we hope this repository will help you achieve that.
Table of Contents
- REST API vs. GraphQL
- How does gRPC work?
- What is a webhook?
- How to improve API performance?
- HTTP 1.0 -> HTTP 1.1 -> HTTP 2.0 -> HTTP 3.0 (QUIC)
- SOAP vs REST vs GraphQL vs RPC
- Code First vs. API First
- HTTP status codes
- What does API gateway do?
- How do we design effective and safe APIs?
- TCP/IP encapsulation
- Why is Nginx called a “reverse” proxy?
- What are the common load-balancing algorithms?
- URL, URI, URN - Do you know the differences?
- Architecture patterns
System Design 101 GitHub repository is built and maintained by Byte Byte Go Hq which is a platform to ace System Design interviews
It has 39.2k starts on Github and 14 contributors. This repository is only available in English and is the best repository for beginners. This repository contains effective guides on topics like communication protocols, CI-CD, Architectural patterns, microservices, DevOps, cloud, Linux, etc.
These are the best resources for System Design on the Internet
System Design Resources
These are the best resources for System Design on the Internet.
Table of Contents
- Video Processing
- Cluster and Workflow Management
- Intra-Service Messaging
- Message Queue Antipattern
- Service Mesh
- Practical System Design
- Distributed File System
- Time Series Databases
- Rate Limiting
- In Memory Database - Redis
- Network Protocols
- Chess Engine Design
- Subscription Management System
- Google Docs
- API Design
- NoSQL Database Internals
- NoSQL Database Algorithms
- Database Replication
- Containers and Docker
- Capacity Estimation
- Publisher Subscriber
- Event Driven Architectures
- Software Architectures
- Distributed Transactions consistency Patterns
- Load Balancing
- Alerts and Anomaly Detection
- Distributed Logging
- Metrics and Text Search Engine
- Single Point of Failure
- Location Based Services
- Batch Processing
- Real Time Stream Processing
- Distributed Consensus
- Content Delivery Network
- Testing Distributed Systems
- System Design Resources
- Transcoding Videos at Scale
- Facebook Video Broadcasting
- Netflix Video Encoding at Scale
- Netflix Shot based encoding
Cluster and Workflow Management
Sytem Design Resources GitHub repository is built and maintained by Interview Ready which is a platform to ace Sytem design interviews for big tech giants.
It has 11.4k stars on Git Hub and 8 contributors. This repository is only available in English. It includes case studies, guides and video lectures on various system design topics including Video Processing, Cluster and Workflow Management, Intra-Service Messaging, Message Queue Antipattern, Service Mesh, Practical System Design, Distributed File System, Time Series Databases, Rate Limiting,In Memory Database - Redis, and many more
Learn how to design systems at scale and prepare for system design interviews
Hey, welcome to the course. I hope this course provides a great learning experience.
Table of contents
- N-tier architecture
- Message Brokers
- Message Queues
- Enterprise Service Bus (ESB)
- Monoliths and Microservices
- Event-Driven Architecture (EDA)
- Event Sourcing
- Command and Query Responsibility Segregation (CQRS)
- API Gateway
- REST, GraphQL, gRPC
- Long polling, WebSockets, Server-Sent Events (SSE)
system-design GitHub repository is built and maintained by Karan Pratap Singh who is a Senior Software Engineer at Curebase.
It has 21.1k stars on Git Hub and 9 contributors. This repository is only available in English. It is basically the free version of the author's real book. It has 5 chapters and is best for beginners who are new to development.
Stay tuned for my next blog till then