Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: System design resourses Added #1592

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
278 changes: 278 additions & 0 deletions System Design/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,278 @@
Here's the complete README file for System Design resources, including YouTube Channels and GitHub Repositories sections:

```markdown
# System Design
System design involves creating the architecture of complex systems, ensuring scalability, reliability, and performance. This curated collection offers valuable System Design resources contributed by talented individuals.

## Table of Contents

- [Roadmap](#roadmap)
- [Tools](#tools)
- [Technologies](#technologies)
- [Courses](#courses)
- [Books](#books)
- [YouTube Channels](#youtube-channels)
- [GitHub Repositories](#github-repositories)
- [Interview](#interview)

### Roadmap

> To become proficient in System Design, there are various skills and areas of knowledge you need to master. Here’s a roadmap to guide you through the learning process:

<table width="100%" id="Roadmap">
<tr>
<th>Resource Name</th>
<th>Description</th>
</tr>
<tr>
<td><a href="https://roadmap.sh/system-design">System Design Roadmap</a></td>
<td>Start your system design journey with roadmap.sh's guide. This comprehensive resource covers basic to advanced topics, including architecture patterns, scalability, and design principles. Featuring best practices, tutorials, interactive videos, and community support, it's ideal for all skill levels.</td>
</tr>
</table>

### Tools

> Discover a wide variety of tools essential for System Design. They are listed below:

<table width="100%">
<tr>
<th>Resource Name</th>
<th>Description</th>
</tr>
<tr>
<td><a href="https://www.lucidchart.com/">Lucidchart</a></td>
<td>Popular tool for creating flowcharts, diagrams, and visual representations of system designs.</td>
</tr>
<tr>
<td><a href="https://www.draw.io/">Draw.io</a></td>
<td>Free and open-source diagramming tool for creating complex system designs.</td>
</tr>
<tr>
<td><a href="https://aws.amazon.com/architecture/">AWS Architecture Tools</a></td>
<td>A suite of tools provided by AWS for designing, building, and documenting AWS-based systems.</td>
</tr>
<tr>
<td><a href="https://www.microsoft.com/en-us/microsoft-365/visio/flowchart-software">Microsoft Visio</a></td>
<td>Professional tool for creating diagrams, including network architectures and system designs.</td>
</tr>
<tr>
<td><a href="https://plantuml.com/">PlantUML</a></td>
<td>Tool that allows users to draw UML diagrams using a simple and intuitive scripting language.</td>
</tr>
<tr>
<td><a href="https://www.nomnoml.com/">Nomnoml</a></td>
<td>Online tool for creating UML diagrams with a text-based syntax.</td>
</tr>
<tr>
<td><a href="https://www.cacoo.com/">Cacoo</a></td>
<td>Online diagramming tool that supports real-time collaboration and various diagram types.</td>
</tr>
</table>

### Technologies

> These are the technologies you can master to be a successful System Designer. They are listed below:

<table width="100%">
<tr>
<th>Resource Name</th>
<th>Description</th>
</tr>
<tr>
<td><a href="https://docs.aws.amazon.com/">AWS Documentation</a></td>
<td>Official AWS documentation covering all services, best practices, and architectural guidelines.</td>
</tr>
<tr>
<td><a href="https://cloud.google.com/docs">Google Cloud Documentation</a></td>
<td>Comprehensive guide to using Google Cloud Platform services and tools.</td>
</tr>
<tr>
<td><a href="https://azure.microsoft.com/en-us/documentation/">Azure Documentation</a></td>
<td>Official Microsoft Azure documentation with tutorials, API references, and architectural guides.</td>
</tr>
<tr>
<td><a href="https://kubernetes.io/docs/">Kubernetes Documentation</a></td>
<td>Detailed information on using Kubernetes for container orchestration and management.</td>
</tr>
<tr>
<td><a href="https://www.docker.com/">Docker Documentation</a></td>
<td>Guides and references for using Docker containers and Docker Compose.</td>
</tr>
<tr>
<td><a href="https://www.nginx.com/resources/">NGINX Documentation</a></td>
<td>Official resources for configuring and using NGINX for web serving and reverse proxy.</td>
</tr>
<tr>
<td><a href="https://www.terraform.io/docs/index.html">Terraform Documentation</a></td>
<td>Comprehensive guide to using Terraform for infrastructure as code (IaC).</td>
</tr>
<tr>
<td><a href="https://www.ansible.com/resources">Ansible Documentation</a></td>
<td>Resources for automating IT tasks using Ansible.</td>
</tr>
<tr>
<td><a href="https://docs.microsoft.com/en-us/dotnet/">.NET Documentation</a></td>
<td>Official documentation for .NET, covering APIs, libraries, and frameworks.</td>
</tr>
<tr>
<td><a href="https://spring.io/projects/spring-boot">Spring Boot Documentation</a></td>
<td>Guide to using Spring Boot for building Java applications.</td>
</tr>
</table>

### Courses

> You can consider these courses for learning System Design:

<table width="100%">
<tr>
<th>Resource Name</th>
<th>Description</th>
<th>Cost</th>
</tr>
<tr>
<td><a href="https://www.udemy.com/topic/system-design/">Udemy System Design Courses</a></td>
<td>Offers a wide variety of courses on system design, covering AWS, Kubernetes, and more.</td>
<td>Paid</td>
</tr>
<tr>
<td><a href="https://www.coursera.org/courses?query=system%20design">Coursera System Design Courses</a></td>
<td>Provides online courses on system design from top universities and colleges, including specializations in cloud architecture.</td>
<td>Paid</td>
</tr>
<tr>
<td><a href="https://www.edx.org/learn/system-design">edX System Design Courses</a></td>
<td>Hosts a range of system design courses from top institutions, covering design, scalability, and more.</td>
<td>Paid</td>
</tr>
<tr>
<td><a href="https://acloud.guru/">A Cloud Guru</a></td>
<td>Offers comprehensive courses on cloud computing and system design, focusing on AWS, Azure, and Google Cloud.</td>
<td>Paid</td>
</tr>
<tr>
<td><a href="https://linuxacademy.com/">Linux Academy</a></td>
<td>Provides courses on Linux, cloud computing, and system design principles.</td>
<td>Paid</td>
</tr>
<tr>
<td><a href="https://www.pluralsight.com/browse/it-ops/system-admin">Pluralsight System Administration and Design</a></td>
<td>Offers courses on system administration, cloud infrastructure, and design patterns.</td>
<td>Paid</td>
</tr>
</table>

Here's the code for the books, YouTube channels, GitHub repositories, and interview sections:

```markdown
### Books

> You can refer to these books on System Design. They are listed below:

<table width="100%">
<tr>
<th>Book Title</th>
<th>Description</th>
</tr>
<tr>
<td><a href="https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321">Designing Data-Intensive Applications by Martin Kleppmann</a></td>
<td>Comprehensive guide to designing robust, scalable, and maintainable data systems.</td>
</tr>
<tr>
<td><a href="https://www.amazon.com/System-Design-Interview-insiders-Second/dp/1736049119">System Design Interview: An Insider's Guide by Alex Xu</a></td>
<td>Detailed book on preparing for system design interviews, with practical examples and case studies.</td>
</tr>
<tr>
<td><a href="https://www.amazon.com/Site-Reliability-Engineering-Production-Systems/dp/149192912X">Site Reliability Engineering by Niall Richard Murphy</a></td>
<td>Explores the principles and practices of site reliability engineering (SRE) at Google.</td>
</tr>
<tr>
<td><a href="https://www.amazon.com/Building-Microservices-Designing-Fine-Grained-Systems/dp/1491950358">Building Microservices by Sam Newman</a></td>
<td>Guide to designing, building, and maintaining microservices architectures.</td>
</tr>
</table>

### YouTube Channels

> You can consider these YouTube Channels for System Design:

<table width="100%">
<tr>
<th>Channel Name</th>
<th>Description</th>
</tr>
<tr>
<td><a href="https://www.youtube.com/c/GauravSen">Gaurav Sen</a></td>
<td>In-depth system design discussions and interview preparation.</td>
</tr>
<tr>
<td><a href="https://www.youtube.com/c/SystemDesignInterview">System Design Interview</a></td>
<td>Focuses on system design concepts and interview questions.</td>
</tr>
<tr>
<td><a href="https://www.youtube.com/c/TechDummiesNarendraL">Tech Dummies</a></td>
<td>Breaks down complex system design topics into easy-to-understand videos.</td>
</tr>
<tr>
<td><a href="https://www.youtube.com/user/javaboynavin">Java Brains</a></td>
<td>Offers a mix of system design, Java programming, and software architecture videos.</td>
</tr>
<tr>
<td><a href="https://www.youtube.com/user/Mkzeeable">Hussein Nasser</a></td>
<td>Focuses on software architecture, backend development, and system design.</td>
</tr>
</table>

### GitHub Repositories

> You can follow these GitHub Repositories for System Design:

<table width="100%">
<tr>
<th>Resource Name</th>
<th>Description</th>
</tr>
<tr>
<td><a href="https://github.com/donnemartin/system-design-primer">System Design Primer</a></td>
<td>Comprehensive guide to system design with examples, exercises, and solutions.</td>
</tr>
<tr>
<td><a href="https://github.com/checkcheckzz/system-design-interview">System Design Interview</a></td>
<td>Collection of resources, articles, and references for system design interviews.</td>
</tr>
<tr>
<td><a href="https://github.com/shashank88/system_design">System Design Notes</a></td>
<td>Notes and resources on system design concepts, architectures, and best practices.</td>
</tr>
<tr>
<td><a href="https://github.com/vasanthk/how-web-works">How Web Works</a></td>
<td>Illustrated guide to the architecture and design of web applications.</td>
</tr>
</table>

### Interview

> Here are some resources for Interview Preparation:

<table width="100%">
<tr>
<th>Resource Name</th>
<th>Description</th>
</tr>
<tr>
<td><a href="https://career.guru99.com/top-25-interview-questions-for-system-design/">Top 25 System Design Interview Questions</a></td>
<td>Curated list of system design interview questions with answers.</td>
</tr>
<tr>
<td><a href="https://www.interviewbit.com/system-design-interview-questions/">InterviewBit System Design Questions</a></td>
<td>Extensive collection of system design interview questions and solutions.</td>
</tr>
<tr>
<td><a href="https://www.geeksforgeeks.org/system-design-tutorial/">GeeksforGeeks System Design Tutorial</a></td>
<td>Detailed tutorial series covering various system design topics and interview preparation.</td>
</tr>
<tr>
<td><a href="https://www.educative.io/courses/grokking-the-system-design-interview">Grokking the System Design Interview</a></td>
<td>Popular course on system design interviews with real-world examples and case studies.</td>
</tr>
</table>
Loading