Выбор ответа Middle Как вести секцию спрашивают часто обновлено

С чего начинать секцию system design

Вопрос

Интервьюер говорит: «Спроектируйте сервис бронирования столиков в ресторанах». Что разумнее всего сделать первым?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Уточнить сценарии пользователей, масштаб и нефункциональные требования. Без требований нельзя принимать решения: схема для 100 ресторанов и для 100 тысяч разная.

Варианты ответа

  1. Нарисовать схему с балансировщиком, сервисами и БД, чтобы сразу показать результат
  2. Уточнить сценарии пользователей, масштаб и нефункциональные требованияправильный ответ
  3. Выбрать базу данных, потому что от неё зависит всё остальное
  4. Описать REST API всех эндпоинтов

Разбор

Без требований нельзя принимать решения: схема для 100 ресторанов и для 100 тысяч разная. Интервьюер прямо оценивает, задаёте ли вы вопросы. Рисовать схему сразу значит строить вслепую. Выбор БД зависит от паттерна доступа, который ещё неизвестен. Полный API преждевременен: сначала нужно понять 3-5 ключевых сценариев.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.