PracHub
QuestionsPremiumCoachesLearningGuidesInterview Prep
|Home/System Design/Chime

Design load balancing, caching, and idempotent APIs

Last updated: May 4, 2026

Quick Overview

This question evaluates a candidate's competency in designing scalable, reliable backend architectures, specifically focusing on load balancing strategies, multi-layer caching, and idempotent API design.

  • easy
  • Chime
  • System Design
  • Software Engineer

Design load balancing, caching, and idempotent APIs

Company: Chime

Role: Software Engineer

Category: System Design

Difficulty: easy

Interview Round: Technical Screen

You are designing a backend service that will be deployed across multiple instances behind a load balancer. Answer the following: ## 1) Load balancing - What is a load balancer and why is it used? - Compare common routing policies: - round-robin / weighted round-robin - least connections - consistent hashing - latency/health-based routing - sticky sessions (session affinity) - Discuss L4 vs L7 load balancing and when you’d choose each. ## 2) Caching - Where can caching be applied (client/CDN, edge, reverse proxy, application, database)? - Explain cache read/write patterns (cache-aside, read-through, write-through, write-back). - How would you handle invalidation, TTLs, and staleness? - Describe how to prevent or mitigate cache stampede/thundering herd. ## 3) Idempotency support Design an API/system that supports **idempotent requests** (e.g., payment charge, order creation). - Define idempotency and why it matters. - Propose an idempotency-key design (where the key comes from, how long it lives). - Explain how the service stores and checks idempotency state. - Address concurrency (same key arrives simultaneously), retries, and partial failures. - Mention how idempotency interacts with load balancing and distributed deployments.

Quick Answer: This question evaluates a candidate's competency in designing scalable, reliable backend architectures, specifically focusing on load balancing strategies, multi-layer caching, and idempotent API design.

Related Interview Questions

  • Design multi-tab browser history and trade-offs - Chime (medium)
  • Design mobile check deposit system - Chime (hard)
Chime logo
Chime
Nov 13, 2025, 12:00 AM
Software Engineer
Technical Screen
System Design
32
0

You are designing a backend service that will be deployed across multiple instances behind a load balancer. Answer the following:

1) Load balancing

  • What is a load balancer and why is it used?
  • Compare common routing policies:
    • round-robin / weighted round-robin
    • least connections
    • consistent hashing
    • latency/health-based routing
    • sticky sessions (session affinity)
  • Discuss L4 vs L7 load balancing and when you’d choose each.

2) Caching

  • Where can caching be applied (client/CDN, edge, reverse proxy, application, database)?
  • Explain cache read/write patterns (cache-aside, read-through, write-through, write-back).
  • How would you handle invalidation, TTLs, and staleness?
  • Describe how to prevent or mitigate cache stampede/thundering herd.

3) Idempotency support

Design an API/system that supports idempotent requests (e.g., payment charge, order creation).

  • Define idempotency and why it matters.
  • Propose an idempotency-key design (where the key comes from, how long it lives).
  • Explain how the service stores and checks idempotency state.
  • Address concurrency (same key arrives simultaneously), retries, and partial failures.
  • Mention how idempotency interacts with load balancing and distributed deployments.

Solution

Show

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Chime•More Software Engineer•Chime Software Engineer•Chime System Design•Software Engineer System Design
PracHub

Master your tech interviews with 8,000+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.