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

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

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

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

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

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

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

Каталог

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

Найдено: 889
System Design

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

Нужен версионируемый каталог контрактов с владельцами, потребителями, схемами и статусом поддержки. Источником истины удобно сделать репозиторий, связанный с CI и проверками совместимости.

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

Задача: есть два микросервиса, нужно перенести большую таблицу (3+ млн записей) из одного в другой (сделать локальную копию). Как бы вы это реализовали, учитывая, что данные могут часто меняться и нужна транзакционность (либо всё, либо ничего)?

Создайте согласованный snapshot в отдельной версии таблицы, затем догоните изменения через CDC и атомарно переключите читателей на готовую копию. Загрузка частями не должна делать частичные данные видимыми.

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

Если кеш таймаутит и запросы начинают массово уходить в БД, как снизить нагрузку на базу?

Нельзя просто направить весь поток после отказа кэша в БД. Нужны лимит fallback-запросов, объединение одинаковых промахов, короткие timeout и управляемая деградация.

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

Как исправить оркестратор с двумя независимыми внешними вызовами, чтобы уложиться в бизнес-лимит 10 секунд при длительностях сервисов 10 и 2 секунды?

Независимые вызовы нужно выполнять параллельно: время станет близко к максимуму из 10 и 2 секунд. Но сервис, отвечающий за 10 секунд, уже исчерпывает весь бюджет оркестратора.

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

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

Kafka доставляет и хранит поток событий, а Postgres может быть источником текущего состояния, транзакций и запросов клиента. Эти роли не взаимоисключающие.

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

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

Используйте transactional outbox на стороне отправителя и идемпотентный inbox/бизнес-ключ у получателя. Реалистичная база — повторяемая доставка с однократным эффектом.

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

Проектирование архитектуры клиентской части для логирования пользовательских сценариев (мобильная)

Разделите сбор событий, очистку данных, локальный журнал с TTL и uploader. Серверные запросы на выгрузку должны проходить через тот же контролируемый pipeline.

Читать ответ