System Design

From original https://gist.github.com/vasanthk/485d1c25737e8e72759f

#System Design Cheatsheet

Picking the right architecture = Picking the right battles + Managing trade-offs

##Basic Steps

  1. Clarify and agree on the scope of the system
  1. High level architecture design (Abstract design)
  1. Component Design
  1. Understanding Bottlenecks
  1. Scaling your abstract design

Load Balancing

Platform Layer

##Key topics for designing a system

  1. Concurrency
  1. Networking
  1. Abstraction
  1. Real-World Performance
  1. Estimation
  1. Availability & Reliability

##Web App System design considerations:

Working Components of Front-end Architecture

Links

How to rock a systems design interview

System Design Interviewing

Scalability for Dummies

Introduction to Architecting Systems for Scale

Scalable System Design Patterns

Scalable Web Architecture and Distributed Systems

What is the best way to design a web site to be highly scalable?

How web works?