ReviseAlgo Logo
Beginner8 min readFoundations of Distributed Systems

What is System Design?

Introduction to high-level architecture planning, standard requirements engineering, and modern scaling metrics.

What you'll learn

  • Functional Requirements
  • Non-Functional Requirements
  • Sizing & Capacity Estimation

TL;DR

Introduction to high-level architecture planning, standard requirements engineering, and modern scaling metrics.

Visual System Topology

What is System Design? Execution Topology

Inbound Node Ingests request
What is System Design? Engine Processes operations
Target Replica Updates state

Concept Overview

System Design is the discipline of defining the architecture, components, modules, interfaces, and data for a complex software system to satisfy specified operational requirements. It acts as the bridge between abstract product specifications and concrete, production-ready distributed infrastructures.

At its core, a system design represents the synthesis of trade-offs. No system is perfect under all circumstances—instead, engineering is the art of selecting the correct compromises (e.g., choosing eventual consistency to guarantee high write availability, or accepting increased memory costs to achieve sub-millisecond query latencies). Successful system architects approach problems by clearly defining boundary constraints, scaling axes, and failure modes beforehand.

Key Architectural Pillars

1

Functional Requirements

The discrete product features that the system must physically execute. These define the API endpoints, operational interactions, and user flows (e.g., "Users can upload media and post comments to their profiles").

2

Non-Functional Requirements

The systemic quality metrics under load. These define the p99 latency thresholds (e.g., "< 150ms"), availability guarantees (e.g., "four-nines uptime"), write durability, and read consistency behaviors.

3

Sizing & Capacity Estimation

The scientific calculation of CPU cores, memory registers, SSD storage capacity, and network interface bandwidth based on Daily Active Users (DAU) and read-to-write traffic ratios.

AI Tutor

Ask about the topic

Sign in Required

Please sign in to use the AI tutor

Sign In
What is System Design? - Module 1: Foundations of Distributed Systems | System Design | Revise Algo