system-design-primer - Learn how to design large-scale systems

  •        147

Learn how to design large-scale systems.Prep for the system design interview.

https://github.com/donnemartin/system-design-primer

Tags
Implementation
License
Platform

   




Related Projects

awesome-scalability - Scalable, Available, Stable, Performant, and Intelligent System Design Patterns

  •    

An updated and curated list of readings to illustrate best practices and patterns in building scalable, available, stable, performant, and intelligent large-scale systems. Concepts are explained in the articles of prominent engineers and credible references. Case studies are taken from battle-tested systems that serve millions to billions of users. Understand your problems: scalability problem (fast for a single user but slow under heavy load) or performance problem (slow for a single user) by reviewing some design principles and checking how scalability and performance problems are solved at tech companies. The section of intelligence are created for those who work with data and machine learning at big (data) and deep (learning) scale.

system-design-interview - System design interview for IT companies

  •    

System design is a very broad topic. Even a software engineer with many years of working experience at a top IT company may not be an expert on system design. If you want to become an expert, you need to read many books, articles, and solve real large scale system design problems. Spend a few minutes questioning the interviewer and agreeing on the scope of the system. Remember to make sure you know all the requirements the interviewer didn't tell you about in the beginning.

system_design - Preparation links and resources for system design questions

  •    

Learning about and implementing large-scale distributed system is not easy. I do not want to give the impression that it's something that can be learnt in a month. What this repository aims to achieve, is for software engineers and students to get a rough idea of how the thought process of designing a large scale works and how big companies have managed to solve really hard problems. Along with that, there is a recent trend for companies to have an open-ended interview with system design questions, which is at times hard for engineers of all levels if they haven't gotten the opportunity to work on such systems themselves. This is a collection of links/documents for the following use cases: a) Prepare for a system design or open-ended rounds. b) Learn more about how large-scale systems work and thought process of designing a new system.

coding-interviews - 🎓 :octocat: Preparation resources for software and web technical interviews

  •    Javascript

This is a list of concepts it is important to learn in order to coding interviews at big companies and for jobs with really technical teams. Not all companies interview this way but many do or at least include CS fundamental and puzzle questions as part of their processes. Preparing for these types of interviews can be challenging and tedious. I created this repo as a collection of resources to help better understand where these questions come from. There are tons of resources out there so if you are looking to crack the coding interview, well, definitely read cracking the coding interview (links below) and review some of the sites and concepts below. I also recommend interviewing.io for doing live practice interviews to get you prepared.


front-end-interview-handbook - 🕸 Almost complete answers to "Front-end Job Interview Questions" which you can use to interview potential candidates, test yourself or completely ignore

  •    Javascript

Unlike typical software engineer job interviews, front-end job interviews have less emphasis on algorithms and have more questions on intricate knowledge and expertise about the domain — HTML, CSS, JavaScript, just to name a few areas. While there are some existing resources to help front end developers in preparing for interviews, they aren't as abundant as materials for a software engineer interview. Among the existing resources, probably the most helpful question bank would be Front-end Developer Interview Questions. Unfortunately, I couldn't find many complete and satisfactory answers to these questions online, hence here is my attempt at answering them. Being an open source repository, the project can live on with the support of the community as the state of web evolves.

vue-design-system - An open source tool for building UI Design Systems with Vue.js

  •    Javascript

Vue Design System is an open source tool for building UI Design Systems with Vue.js. It provides you and your team a set of organized tools, patterns & practices that work as the foundation for your application development. The tool is built on top of Vue.js, Vue Styleguidist, Webpack, and Theo and is aimed for designers and front-end developers who have at least basic knowledge of component based workflows + HTML, SCSS & JavaScript.

Java Design Patterns - Design patterns implemented in Java

  •    Java

Design patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system. Design patterns can speed up the development process by providing tested, proven development paradigms.

primer - The design system that powers GitHub

  •    CSS

Primer is the design system that powers GitHub. Primer includes 23 packages that are grouped into 3 core meta-packages for easy install. Each package and meta-package is independently versioned and distributed via npm, so it's easy to include all or part of Primer within your own project. The Primer repo is managed as a monorepo that is composed of many npm packages.

argon-design-system-react - React version of Argon Design System

  •    CSS

Start your development with a Design System for Bootstrap 4, React and Reactstrap. It is open source, free and it features many components that can help you create amazing websites. Argon Design System React is built with over 100 individual components, giving you the freedom of choosing and combining. All components can take variations in color, that you can easily modify using SASS files.

rebass - :atom_symbol: React UI component library & design system, built with styled-components and styled-system

  •    Javascript

React UI component library & design system, built with styled-system, with support for styled-components & emotion. Rebass is a library of highly-composable, primitive UI components for React, built with styled-components to keep styles isolated and reduce the need to write custom CSS in your application. Based upon a configurable design system, Rebass‘s props API makes building consistent, responsive web apps simpler and faster.

ml-system-design-pattern - System design patterns for machine learning

  •    

This repository contains system design patterns for training, serving and operation of machine learning systems in production. The main objective of this document is to explain system patterns for designing machine learning system in production. This document is not the design patterns for developing machine learning model to achieve certain performance in accuracy, though some columns may refer to those use-cases.

the-coding-interview - Programming exercises, code katas and puzzles for your job interview training - or just for fun

  •    Python

I honestly did not expect the big amount of interest in the project. I should clean up a bit more... Anyway, the main purpose is doing some fun programming workouts from time to time to stay in shape. The awesome title image was Designed by Freepik.

interactive-coding-challenges - Interactive Python coding interview challenges (algorithms and data structures)

  •    Python

Overhauled to now include 120 challenges and solutions and added Anki flashcards.Also included are unit tested reference implementations of various data structures and algorithms.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.