System Design Fundamentals

System Design

System Design Fundamentals


Learn everything you need to know about System Design all in one place, including What is system design, System Design Performance Metrics, Scalability, Horizontal Scaling, Vertical Scaling, Reliability, and more.

What is System Design?

Learn everything you need to know in System Design all in one place, including proxies, load balancers, caching, SQL and NoSQL databases, Database replication, Database sharding, and more.

Explore this Resource

System Design Performance Metrics

The Metrics below are used to measure the performance of a system.

Explore this Resource


Scalability describes a system's elasticity. It refers to a system's ability to handle or withstand an increase in workload without sacrificing system performance. It’s the ability of a system to grow and manage an increased volume of requests(traffic) from users over time.

Explore this Resource

Horizontal Scaling (Scaling out)

Horizontal scaling also known as Scaling out simply means adding more nodes/machines to your infrastructure to the existing hardware resource pool to cope with new demands.

Explore this Resource

Vertical Scaling (Scaling up)

Vertical scaling also known as scaling up means adding additional resources to your server such as upgrading CPU, Memory, Storage, and Network speeds.

Explore this Resource

System Reliability

System Reliability is the probability that a system will perform correctly during a specific time duration. A system is reliable when it adequately follows the defined performance specifications and no repair is required during that period.

Explore this Resource

System Availability

System availability is the probability that a system works properly when it’s requested for use. It means that the system is available for use as a percentage of scheduled uptime and is not due to problems or other interruptions that are not scheduled. It’s a measure that a system has not failed or undergoing repair when it needs to be used.

Explore this Resource

Availability Vs Reliability

Availability is a measure of the % of time the system is in an operable state while reliability is a measure of how long the item performs its intended function without breaking down.

Explore this Resource

System Efficiency

System efficiency measures how well a system works. The two metrics used to measure system efficiency are Latency and Throughput.

Explore this Resource

Whenever you're ready

There are 4 ways we can help you become a great backend engineer:

The MB Platform

Join 1000+ backend engineers learning backend engineering. Build real-world backend projects, learn from expert-vetted courses and roadmaps, track your learnings and set schedules, and solve backend engineering tasks, exercises, and challenges.

The MB Academy

The “MB Academy” is a 6-month intensive Advanced Backend Engineering BootCamp to produce great backend engineers.

Join Backend Weekly

If you like post like this, you will absolutely enjoy our exclusive weekly newsletter, Sharing exclusive backend engineering resources to help you become a great Backend Engineer.

Get Backend Jobs

Find over 2,000+ Tailored International Remote Backend Jobs or Reach 50,000+ backend engineers on the #1 Backend Engineering Job Board