Skip to content
RED SAGSkills
hardFull Stack Developer interview question

Your app works well for 1,000 users. Traffic is expected to grow to 1 million users. How would you prepare the system, and in what order?

What the interviewer wants to hear

  • Measure and find the real bottlenecks before changing architecture
  • Stateless app servers behind a load balancer with autoscaling
  • CDN and caching for static and repeated reads
  • Database: indexes, connection pooling, read replicas, then partitioning
  • Background queues for slow work, plus monitoring and load testing

Model answer

I would first measure. I add observability, such as metrics, logs and tracing, and run load tests to find what breaks first, because guessing leads to complex systems we do not need. Usually the order is: make app servers stateless, keeping sessions and uploads in shared stores, so I can run many instances behind a load balancer with autoscaling. Put static assets and cacheable pages behind a CDN. Then the database, which is usually the real bottleneck: fix slow queries and indexes, add connection pooling, cache hot reads in Redis with clear invalidation, and add read replicas for read-heavy pages while being careful about replica lag. Slow work like emails, image processing and reports moves to a queue with workers. Only if one database still cannot handle writes would I consider partitioning or sharding. Throughout, I keep rate limits, graceful degradation and runbooks ready.

Can you answer it under time pressure?

Take a timed hard round and get scored on every answer.

Start mock interview

More hard Full Stack Developer questions