Подготовка к интервью

Вопросы по System Design на собеседовании

889 вопросов по System Design

889 вопросов 1634 компании 353 технологии

Что проверяют на интервью

Как устроена подборка

В этой подборке вопросы сгруппированы по формату «System Design», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: backend, api, database.

Каталог

Результаты поиска

Найдено: 889
System Design

Есть сервис для блокировки продавцов: одна ручка принимает ID продавца и записывает его в таблицу заблокированных. Как бы ты реализовал эту логику?

Проверьте право блокировать продавца и идемпотентно создайте запись с уникальным seller_id. Повторная блокировка не должна создавать дубликаты или терять аудит.

Читать ответ
System Design

Если заявка о сломанном лифте придёт дважды, это критично?

Дубликат заявки может быть критичен, если создаёт повторный выезд, оплату или конфликт статусов. Повтор технического запроса и новое обращение жителя нужно различать.

Читать ответ
System Design

Были ли взаимосвязи между контрактами разных сервисов? Какие виды связи у вас были?

Контракты могут связываться синхронными API, общими событиями и идентификаторами бизнес-сущностей. Важно отличать необходимую связь от зависимости от внутренних моделей.

Читать ответ
System Design

Как гарантировать доставку событий при нестабильной сети (сеть может обрываться, события нельзя терять)?

Событие сначала сохраняют устойчиво, затем отправляют с подтверждением и повторяют после сбоев. Получатель должен безопасно обрабатывать дубликаты: сеть не даёт exactly-once сама по себе.

Читать ответ
System Design

Какие нештатные ситуации могут возникнуть в процессе бронирования и как с ними справляться?

Типичные сбои бронирования — конкуренция за место, истечение резерва, неопределённый результат оплаты и повторные запросы. Нужна явная машина состояний и восстановление.

Читать ответ
System Design

[имя] спросил: Как было устроено хранение и кеширование персональных данных в сервисе? Почему выбрали PostgreSQL и Redis, как обеспечивали быстрый ответ и что происходило бы при недоступности Redis?

Опишите PostgreSQL как источник истины и Redis как кэш, если именно так было в проекте. Важны срок жизни, инвалидирование и безопасное поведение при отказе.

Читать ответ
System Design

Как распределялось взаимодействие между сервисами, и как вы ограничивали область ответственности каждого сервиса?

Границы сервисов определяют бизнес-ответственностью и владением данными, а взаимодействия — явными API или событиями. Важно избегать скрытой связи через общую схему БД.

Читать ответ
System Design

Почему вы сделали именно столько сервисов? Как происходил выбор — делать сервис или не делать?

Сервисы выделяют по самостоятельной ответственности, владению данными и потребности в независимом развитии или масштабировании, а не ради заданного количества.

Читать ответ