← All topics

System Design Junior interview questions and answers

75 questions for a System Design (Junior) interview - with correct answers, explanations and links to the docs.

Take this quiz
  1. 1.What happens when a user types a site's address and presses Enter?
  2. 2.What is DNS for?
  3. 3.How does HTTPS differ from HTTP?
  4. 4.What does the REST principle "resources + HTTP methods" mean?
  5. 5.How does GET differ from POST?
  6. 6.Which HTTP method is NOT idempotent?
  7. 7.What do the HTTP status code classes mean?
  8. 8.How do 401 and 403 responses differ?
  9. 9.How does authentication differ from authorization?
  10. 10.What does it mean that HTTP is a stateless protocol?
  11. 11.What is a CDN for?
  12. 12.What does the Cache-Control: max-age=3600 header specify?
  13. 13.How does latency differ from bandwidth?
  14. 14.How does an SPA differ from an MPA?
  15. 15.Why does server-side rendering (SSR) often improve the first load?
  16. 16.Why does an API return a list page by page (pagination)?
  17. 17.Why use debounce in search-as-you-type?
  18. 18.Which UI states should you plan for a screen with a list of data?
  19. 19.How do functional requirements differ from non-functional ones?
  20. 20.How does vertical scaling differ from horizontal scaling?
  21. 21.What does a load balancer do?
  22. 22.In general, how do relational (SQL) databases differ from NoSQL?
  23. 23.What is polling?
  24. 24.When should you choose WebSocket?
  25. 25.What should you do with images to make the page load faster?
  26. 26.Why split the JS bundle into parts (code splitting)?
  27. 27.What do minification and compression (gzip, brotli) give you?
  28. 28.What are dev, staging and production environments for?
  29. 29.What is CI/CD?
  30. 30.Why does the frontend need error monitoring (Sentry and the like)?
  31. 31.What does a 429 Too Many Requests response mean?
  32. 32.Where should form data be validated?
  33. 33.Why version an API (/api/v1/...)?
  34. 34.Why set a timeout on network requests?
  35. 35.What is an optimistic UI update?
  36. 36.How do you avoid losing a draft of a long form if the tab is closed by accident?
  37. 37.Why is accessibility (a11y) considered a non-functional requirement of a system?
  38. 38.What should you take into account if the product will be in several languages?
  39. 39.What is a feature flag?
  40. 40.What is a single point of failure?
  41. 41.What does "99.9%" (three nines) availability mean?
  42. 42.Why can't you trust data that comes from the client?
  43. 43.How do you protect against XSS when displaying user content?
  44. 44.What is "logging" in the context of operating a system?
  45. 45.Why is a static site (SSG) good for a blog or documentation?
  46. 46.Why is a cache like Redis in front of the database useful under high load?
  47. 47.What is database replication?
  48. 48.What is an ETag, and why is it needed?
  49. 49.How does long polling differ from regular polling?
  50. 50.How do you send analytics when the page closes without losing the request?
  51. 51.What is the main improvement of HTTP/2 over HTTP/1.1?
  52. 52.What does a TLS certificate prove to the browser?
  53. 53.What is CORS?
  54. 54.What does the browser do with cookies that localStorage doesn't do?
  55. 55.What does a 304 Not Modified response mean?
  56. 56.How do 502, 503 and 504 differ?
  57. 57.What does throughput (requests per second) measure compared to latency?
  58. 58.What is a cache hit ratio?
  59. 59.What does a database index do?
  60. 60.Why must secrets like a database password never be put in frontend code?
  61. 61.What is a health check endpoint for?
  62. 62.Why should every deployment be easy to roll back?
  63. 63.When is classic pagination better than infinite scroll?
  64. 64.Why are skeleton screens often preferred to a full-page spinner?
  65. 65.What is progressive enhancement?
  66. 66.Why should you test the app on a throttled slow network?
  67. 67.What does font-display: swap do for web fonts?
  68. 68.What is the critical rendering path?
  69. 69.What is a webhook?
  70. 70.How does synchronous communication between services differ from asynchronous?
  71. 71.What is OpenAPI (Swagger) used for?
  72. 72.Why aren't database replicas a replacement for backups?
  73. 73.What does a reverse proxy (e.g. nginx) in front of app servers do?
  74. 74.How should user passwords be stored?
  75. 75.What is mixed content?