Load Balancers: The First Box You Should Draw in System Design

If you forget to mention a load balancer in a system design interview, the interviewer usually won’t stop you.

They’ll just stop trusting the rest of your design.

Because load balancers are not an optimization.
They are the entry point of every scalable system.

Before we dive in, quick context. I’m documenting system design concepts the way interviews actually test them. I write one system design article daily on LeetCode, and I organize deeper explanations and patterns here:

👉 https://www.cracksystemdesign.com/

Now let’s talk about the most underestimated box in system design diagrams.


Why Load Balancers Matter So Much

In interviews, load balancers solve three problems at once:

  1. Scalability
  2. Availability
  3. Fault isolation

Without a load balancer:

  • One server crash brings everything down
  • You can’t scale horizontally
  • Traffic spikes become outages

Interviewers mentally check for a load balancer within the first few minutes of your design.


What a Load Balancer Actually Does

At a high level, a load balancer:

  • Receives incoming client requests
  • Chooses a backend server
  • Forwards the request
  • Returns the response

But in system design interviews, what matters is why it exists, not just what it does.


Basic Request Flow (Interview Mental Model)

Client
  |
  | Public IP
  v
Load Balancer
  |
  | Private IPs
  v
Application Servers

Key observation interviewers expect:
Clients never talk directly to application servers.

That single fact enables scale, security, and resilience.


Why Load Balancers Are Critical for Scalability

Let’s say your system has one backend server.

Traffic increases.
You add more servers.

Now what?

Without a load balancer:

  • Clients must know every server IP
  • Failover becomes impossible
  • Deployments cause downtime

With a load balancer:

  • Servers can be added or removed dynamically
  • Traffic spreads automatically
  • Scale becomes a configuration problem, not a code problem

This is why horizontal scaling depends on load balancers.


Availability and Failure Handling

Interviewers care deeply about failure scenarios.

They will ask:
“What happens if one server goes down?”

A load balancer:

  • Performs health checks
  • Stops routing traffic to unhealthy instances
  • Keeps the system partially alive even during failures

If your design doesn’t explain this, it sounds theoretical.


Load Balancer Algorithms (Only What Interviews Expect)

You don’t need to memorize all algorithms.

You need to understand intent.

Common ones:

  • Round Robin
  • Least Connections
  • Hash-based routing

What interviewers want:

  • Awareness that different strategies exist
  • Ability to choose one based on workload

Example:

  • Stateful sessions might need hash-based routing
  • CPU-heavy workloads benefit from least connections

Stateless vs Stateful Services

Load balancers work best with stateless services.

If servers don’t store session data:

  • Any request can go to any server
  • Failures are easier to recover from
  • Scaling is simpler

If state exists:

  • You need sticky sessions
  • Or externalize state to databases or caches

Interviewers love when candidates explicitly mention this trade-off.


Load Balancers and Real Client IPs

A subtle but important detail.

Behind a load balancer:

  • Backend servers see the load balancer IP
  • Not the real client IP

Why this matters:

  • Logging
  • Rate limiting
  • Security rules

Correct approach:

  • Load balancer forwards client IP via headers
  • Backend extracts it from headers like X-Forwarded-For

Mentioning this shows production experience.


Single Load Balancer Is a Single Point of Failure

This is where stronger candidates stand out.

If you draw:
Client → Load Balancer → Servers

Interviewers may ask:
“What if the load balancer goes down?”

Good follow-up:

  • Use managed load balancers
  • Deploy multiple load balancer instances
  • DNS-based failover

This shows you think beyond happy paths.


Where Load Balancers Sit in Modern Systems

In real architectures:

  • CDN → Load Balancer → Services
  • API Gateway → Load Balancer → Microservices
  • Internal load balancers between services

Load balancing is not just external.
It exists at multiple layers.


What Interviewers Expect at Each Level

SDE 1

  • Mentions a load balancer
  • Understands basic traffic distribution

SDE 2

  • Explains health checks and statelessness
  • Talks about scaling strategies

Senior / Principal

  • Discusses failure modes
  • Handles LB as a potential bottleneck
  • Designs multi-layer load balancing

Same component.
Different depth.


How I’m Learning This Myself

While preparing for system design interviews, I realized many failures happen not because of missing components, but because candidates can’t explain why they exist.

I’m documenting these patterns daily on LeetCode and organizing them clearly at:
👉 https://www.cracksystemdesign.com/

It’s not a sales pitch.
Just practical system design thinking, structured for interviews.


Final Thought

If your system can’t enter safely, it can’t scale.

Load balancers are not optional boxes.
They are the foundation of reliable systems.


Let’s make this interactive

  • Do you usually add a load balancer immediately, or after scaling?
  • Have you ever been asked a follow-up question on load balancers?
  • Want a deep dive on API Gateway vs Load Balancer next?

Drop your thoughts in the comments.
If this helped, upvote so more candidates stop missing this critical piece.

I’m posting one system design article daily on LeetCode.

Comments (3)