Verified Jobs Live
General Intermediate Level ~1 min read

Designing Interview Questions

Quick Revision Summary

How would you design a server that has to process a fair number of good number of requests a second. What if you didn't know how many requests you'd be getting? What if requests...

Interactive Practice Mode
Formulate your thoughts or take notes before revealing the model solution.
Model Answer & Deep-Dive Explanation
  • How would you design a server that has to process a fair number of good number of requests a second. What if you didn't know how many requests you'd be getting? What if requests had different priorities? (I always think of the Apache design for this question)
  • Design malloc and free. (give up? see how G++ malloc works or this page for more examples)
  • Design an elevator control system. Don't forget buttons on every floor and supporting multiple elevators. (What objects/methods/properties/how components communicate)
  • Design a chess game (what objects? what methods? which data where? how will it work?)
  • Design a deck of cards class (object/methods/data)
  • How would you design the infrastructure front half of a very large web ecommerce site? what if it was very personalized? (how sessions are handled? where and what you can cache? how to load-balance?)

Interviewer Evaluation Points & Scoring Rubric

  • 1 Structure answer clearly: Core concept, Practical example, and Pitfalls to avoid.
  • 2 Demonstrate clear communication without unnecessary buzzwords.
  • 3 Relate concept to real-world software development scenarios.