Skip to content
The Patterns of Scalable, Reliable, and Performant Large-Scale Systems
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update FUNDING.yml Sep 13, 2019
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Mar 22, 2019
CONTRIBUTING.md Create CONTRIBUTING.md Dec 27, 2017
LICENSE Create LICENSE Mar 22, 2019
README.md PyKrylov: Accelerating Machine Learning Research at eBay Feb 15, 2020
SECURITY.md Create SECURITY.md May 23, 2019
_config.yml Set theme jekyll-theme-modernist Jan 22, 2020
logo.png Consistent Logo Jan 22, 2020

README.md

Logo

An updated and organized reading list for illustrating the patterns of scalable, reliable, and performant 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.

If your system goes slow

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.

If your system goes down

"Even if you lose all one day, you can build all over again if you retain your calm!" - Thuan Pham, CTO of Uber. So, keep calm and mind the availability and stability matters!

If you are having a system design interview

Look at some interview notes and real-world architectures with completed diagrams to get a comprehensive view before designing your system on whiteboard. You can check some talks of engineers from tech giants to know how they build, scale, and optimize their systems. There are some selected books for you (most of them are free)! Good luck!

If you are building your dream team

The goal of scaling team is not growing team size but increasing team output and value. You can find out how tech companies reach that goal in various aspects: hiring, management, organization, culture, and communication in the organization section.

Community power

Contributions are greatly welcome! You may want to take a look at the contribution guidelines. If you see a link here that is no longer maintained or is not a good fit, please submit a pull request!

Many long hours of hard work have gone into this project. If you find it helpful, please share on Facebook, on Twitter, on Weibo, or on your chat groups! Knowledge is power, knowledge shared is power multiplied. Thank you!

Content

Principle

Scalability

Availability

Stability

Performance

Intelligence

Architecture

Interview

Organization

Talk

Book

Donation

Binh Nguyen creates and maintains this project. Could you treat his cat a cake? 🍰

You can’t perform that action at this time.