Skip to content
RED SAGSkills
hardDatabase Administrator interview question

The business expects traffic to grow ten times over the next 18 months. How do you plan database capacity?

What the interviewer wants to hear

  • Measure current baselines: data size growth, QPS, CPU, I/O, connections and headroom
  • Find the first bottleneck and model growth per resource
  • Use the cheap wins first: query and index tuning, caching, read replicas, pooling
  • Then scale up, partition, archive old data, and only shard when needed
  • Load test against forecasts and review the plan regularly

Model answer

I would start with data, not guesses: current database size and monthly growth, peak queries per second, CPU, memory, I/O latency and IOPS, connection counts and replication lag, and how close each is to its limit. Then I model what ten times traffic means for each resource and find the first wall, which is often writes on the primary or a few expensive queries. Cheap wins come first: tuning the top queries from pg_stat_statements, better indexes, application caching, read replicas for read traffic and a connection pooler. Next come bigger instances and faster storage, partitioning large tables and archiving old data. Sharding is the last step because of its complexity. I would validate the plan with load tests on production-like data, set budget estimates, and review the forecast every quarter.

Can you answer it under time pressure?

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

Start mock interview

More hard Database Administrator questions