Bird
Raised Fist0
HLDsystem_design~10 mins

Why infrastructure design underpins everything in HLD - Scalability Evidence

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Scalability Analysis - Why infrastructure design underpins everything
Growth Table: Infrastructure Design Impact at Different Scales
UsersInfrastructure FocusKey Changes
100 usersBasic setupSingle server, simple network, minimal monitoring
10,000 usersScaling basicsLoad balancers, database replicas, caching introduced
1,000,000 usersAdvanced scalingMultiple data centers, sharding, CDN, automated failover
100,000,000 usersGlobal infrastructureMulti-region deployment, microservices, edge computing, extensive monitoring
First Bottleneck: Infrastructure Limits System Growth

At small scale, the infrastructure is simple and can handle all requests. As users grow, the first bottleneck is usually the network and server capacity. Without proper design, servers get overwhelmed, causing slow responses or downtime. Poor infrastructure design means you can't add more servers easily or balance load well, so the system breaks under higher traffic.

Scaling Solutions Enabled by Good Infrastructure Design
  • Horizontal scaling: Add more servers behind load balancers to share traffic.
  • Vertical scaling: Upgrade server CPU, RAM, and network capacity.
  • Caching: Use in-memory caches to reduce database load and speed responses.
  • Sharding: Split databases by user or data type to distribute load.
  • Content Delivery Network (CDN): Serve static content closer to users to reduce latency and bandwidth use.
  • Automation and monitoring: Detect and respond to failures quickly to maintain uptime.
Back-of-Envelope Cost Analysis

For 1 million users, assuming 10% active concurrently:

  • Requests per second (RPS): ~100,000 (assuming 1 request per second per active user)
  • Servers needed: ~20 servers (each handles ~5,000 concurrent connections)
  • Database QPS: ~100,000 (may require sharding or replicas)
  • Bandwidth: 1 Gbps network supports ~125 MB/s, so multiple 1 Gbps links or 10 Gbps needed
  • Storage: Depends on data size, but expect terabytes for logs, user data, backups
Interview Tip: Structuring Scalability Discussion

Start by describing the current infrastructure and its limits. Then explain what breaks first as users grow. Next, propose specific scaling solutions tied to those bottlenecks. Finally, discuss trade-offs and costs. Use clear examples and relate to real systems to show understanding.

Self-Check Question

Your database handles 1000 queries per second (QPS). Traffic grows 10x to 10,000 QPS. What do you do first?

Answer: Add read replicas and implement caching to reduce direct database load before considering sharding or hardware upgrades.

Key Result
Infrastructure design is the foundation that enables smooth scaling; without it, systems break early under growing user load due to network and server limits.

Practice

(1/5)
1. Why is infrastructure design considered the foundation of all system parts?
easy
A. Because it ensures the system is reliable, scalable, and maintainable
B. Because it only focuses on the user interface design
C. Because it ignores future growth and changes
D. Because it is only about hardware setup

Solution

  1. Step 1: Understand the role of infrastructure design

    Infrastructure design sets the base for how all parts of a system work together, affecting reliability and scalability.
  2. Step 2: Identify why it matters for system parts

    Good infrastructure design supports system growth, performance, and maintenance, unlike options that focus narrowly on UI or hardware only.
  3. Final Answer:

    Because it ensures the system is reliable, scalable, and maintainable -> Option A
  4. Quick Check:

    Infrastructure design = foundation for reliability and scalability [OK]
Hint: Think of infrastructure as the system's strong base [OK]
Common Mistakes:
  • Confusing infrastructure with just UI design
  • Ignoring scalability and future growth
  • Thinking infrastructure is only hardware
2. Which of the following is a correct statement about infrastructure design?
easy
A. It helps in making the system scalable and reliable
B. It is unrelated to system performance
C. It should be planned only after the system is fully built
D. It only deals with choosing colors and fonts

Solution

  1. Step 1: Review the purpose of infrastructure design

    Infrastructure design is about planning system components to ensure performance and scalability.
  2. Step 2: Evaluate each option's correctness

    Only It helps in making the system scalable and reliable correctly states that infrastructure design helps scalability and reliability; others are false or irrelevant.
  3. Final Answer:

    It helps in making the system scalable and reliable -> Option A
  4. Quick Check:

    Infrastructure design = scalability and reliability [OK]
Hint: Infrastructure design improves system growth and stability [OK]
Common Mistakes:
  • Thinking infrastructure is a late task
  • Ignoring its impact on performance
  • Confusing it with UI styling
3. Consider a system designed without proper infrastructure planning. Which of the following outcomes is most likely?
medium
A. The system will be fast and easily scalable
B. The system will have perfect security by default
C. The system may face frequent failures and slowdowns
D. The system will automatically fix design issues

Solution

  1. Step 1: Analyze effects of poor infrastructure design

    Poor planning often leads to unreliable systems with performance issues and failures.
  2. Step 2: Match outcomes to options

    The system may face frequent failures and slowdowns correctly describes likely failures and slowdowns; other options are unrealistic or incorrect.
  3. Final Answer:

    The system may face frequent failures and slowdowns -> Option C
  4. Quick Check:

    Poor infrastructure = failures and slowdowns [OK]
Hint: Bad infrastructure causes failures, not fixes [OK]
Common Mistakes:
  • Assuming system auto-fixes design flaws
  • Believing poor design leads to perfect security
  • Thinking poor design improves speed
4. A team built a system without considering infrastructure design. The system crashes under load. What is the most likely cause?
medium
A. They used too many colors in the UI
B. They did not plan for scalability and resource management
C. They wrote too many comments in code
D. They chose the wrong font style

Solution

  1. Step 1: Identify cause of crashes under load

    Crashes under load usually happen due to poor scalability and resource planning in infrastructure.
  2. Step 2: Evaluate options for relevance

    Only They did not plan for scalability and resource management relates to infrastructure and system stability; others are unrelated UI or code style issues.
  3. Final Answer:

    They did not plan for scalability and resource management -> Option B
  4. Quick Check:

    Crashes under load = poor scalability planning [OK]
Hint: Crashes under load? Check scalability plans first [OK]
Common Mistakes:
  • Blaming UI colors for system crashes
  • Confusing code comments with performance
  • Ignoring resource management importance
5. You are designing a new online service expected to grow rapidly. Which infrastructure design choice best supports this growth?
hard
A. Build a single server system with fixed resources
B. Use outdated hardware to reduce initial expenses
C. Ignore monitoring and logging to save costs
D. Design a scalable architecture with load balancing and auto-scaling

Solution

  1. Step 1: Understand requirements for rapid growth

    Rapid growth requires infrastructure that can scale automatically and balance load to maintain performance.
  2. Step 2: Evaluate each option against growth needs

    Design a scalable architecture with load balancing and auto-scaling supports scalability and reliability; others limit growth or risk failures.
  3. Final Answer:

    Design a scalable architecture with load balancing and auto-scaling -> Option D
  4. Quick Check:

    Rapid growth needs scalable, balanced infrastructure [OK]
Hint: Choose scalable, auto-scaling infrastructure for growth [OK]
Common Mistakes:
  • Choosing fixed resource servers for growing systems
  • Skipping monitoring which helps detect issues
  • Using outdated hardware risking failures