Nicholas Alvarez

System Design Collection

All System Design Posts

Nicholas Alvarez
Nicholas Alvarez
Updated: April 14th, 2026

System Design Blog Collection

Welcome to my growing collection of System Design fundamentals. These posts are designed to make complex concepts easy to understand — perfect for interview prep, learning, or refreshing your knowledge.

😌 Design a High Performance Key-Value Store (System Design Interview Guide)

😌 Design a High Performance Key-Value Store (System Design Interview Guide)

Easily Learn How to Create a Scalable, Low-Latency Storage Key-Value Store

This guide explores the design of a highly available and scalable distributed key-value store, covering essential techniques like consistent hashing for partitioning, vector clocks for conflict resolution, and quorum consensus for tunable consistency.

April 14th, 2026
Part 2: Complete Your Understandings for Rate Limiter Design

Part 2: Complete Your Understandings for Rate Limiter Design

Take a deep dive into designing a rate limiter

Complete your understandings of how to design a rate limiter and explore the depths and details of rate limiting.

April 8th, 2026
Rate Limiting Made Easy: 5 Common Algorithms (Sliding Window Counter)

Rate Limiting Made Easy: 5 Common Algorithms (Sliding Window Counter)

Learn the Sliding Window Counter Algorithm

Master the 5 essential rate-limiting algorithms, featuring the sliding window counter. The sliding window counter combines the fixed window counter and sliding window log and is one of the most commonly seen algorithms in large-scale production environments.

April 7th, 2026
Rate Limiting Made Easy: 5 Common Algorithms (Sliding Window Log)

Rate Limiting Made Easy: 5 Common Algorithms (Sliding Window Log)

Learn the Sliding Window Log Algorithm

Master the 5 essential rate-limiting algorithms, featuring the sliding window log. The sliding window log uses a 60 second rolling look back window and requests per rolling window. It is very close to the fixed window counter, but removes the edge case problem.

April 6th, 2026
Rate Limiting Made Easy: 5 Common Algorithms (Fixed Window Counter)

Rate Limiting Made Easy: 5 Common Algorithms (Fixed Window Counter)

Learn the Fixed Window Counter Algorithm

Master the 5 essential rate-limiting algorithms, featuring the fixed window counter. The fixed window counter creates time blocks for a certain predetermined amount of time, and rate limits requests.

April 3nd, 2026
Rate Limiting Made Easy: 5 Common Algorithms (Leaking Bucket)

Rate Limiting Made Easy: 5 Common Algorithms (Leaking Bucket)

Learn the Leaking Bucket Algorithm

Master the 5 essential rate-limiting algorithms, featuring an in-depth breakdown of the Leaking Bucket strategy—a steady flow algorithm that uses a queue, behaving much like the token bucket.

April 2nd, 2026
Rate Limiting Made Easy: 5 Common Algorithms (Token Bucket)

Rate Limiting Made Easy: 5 Common Algorithms (Token Bucket)

Learn the Token Bucket Algorithm

Master the 5 essential rate-limiting algorithms, featuring an in-depth breakdown of the Token Bucket strategy—a coin-based system that ensures your API stays stable even under heavy traffic.

April 1st, 2026
System Design was HARD until I Learned these 30 Concepts

System Design was HARD until I Learned these 30 Concepts

30 Essential System Design Concepts Every Developer Should Know

In this article, I'll walk you through the 30 most important System Design concepts every developer should know.

February 4th, 2026
Back-of-the-Envelope Calculations

Back-of-the-Envelope Calculations

How to Perform Back-of-the-Envelope Calculations

Learn how to estimate system capacity and performance using simple approximations — essential for system design interviews.

February 2nd, 2026
Caching in JavaScript Made Easy

Caching in JavaScript Made Easy

A brief overview of what a cache is and what it looks like

Learn how to create a cache and what it is used for when optimizing systems. This is a fundamental concept you should know well for System Design Interviews.

January 27th, 2026
Consistent Hashing

Consistent Hashing

Consistent Hashing Made Easy

Understand consistent hashing rings, virtual nodes, and why it's critical for distributed systems like DynamoDB and Redis.

February 4th, 2026
Rate Limiters

Rate Limiters

Rate Limiters Made Easy

Control request rates with token bucket, leaky bucket, sliding windows — prevent abuse and protect your APIs.

February 4th, 2026
Load Balancers

Load Balancers

Load Balancer Made EASY in Systems Design Interviews

Distribute traffic, handle failures, improve availability — the traffic cop of your backend servers.

February 4th, 2026
Vertical vs Horizontal Scaling

Vertical vs Horizontal Scaling

Horizontal Vs Vertical Scaling Made EZ

Compare upgrading one machine vs adding more machines — tradeoffs, real-world hybrid approaches, and when to use each.

February 4th, 2026
Systems design | MIT News

Systems design | MIT News

Transforming Complex Codebases with Silverthread

The MIT spinout Silverthread helps companies transform complex codebases into modular systems that can be changed or updated without headaches.

February 4th, 2026
System Design PDFs (2024 Edition - Latest)

System Design PDFs (2024 Edition - Latest)

High-Resolution System Design Blueprints & Archives

High Resolution PDFs/Images Big Archive: System Design Blueprint: Kubernetes tools ecosystem.

2024
System Design is More Important Than You Think

System Design is More Important Than You Think

Why System Design Matters in the Leetcoder Era

This was one of the finest articles about the system design and its industry impact in this new era of Leetcoders.

February 4th, 2026

More posts coming soon — check back often or follow me for updates!

Summary

Thank you for exploring my System Design collection!

Make sure to check out the full blog archive here for more topics and materials!