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

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

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

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

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

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

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

Каталог

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

Найдено: 889
System Design

Провайдер разрешает отправку только 100 SMS в секунду, а у клиента загружено 2 миллиона номеров — как это учитывать, чтобы не допустить падения системы?

Сохраняйте получателей в долговечной очереди и ограничивайте общий темп до 100 SMS/с по правилам провайдера. Минимальное время для 2 миллионов отдельных SMS — 5 часов 33 минуты 20 секунд.

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

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

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

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

Кейс 5 (заменённый): Мы хотим создать новое приложение — сервис для переводов, чтобы можно было отправлять переводы от одной стороны к другой. Какова должна быть архитектура этого приложения? Спроектируй архитектуру такого приложения.

Для переводов нужны API, проверка прав и лимитов, неизменяемый учёт проводок, оркестрация операции и интеграция с внешним провайдером. Ключевые свойства — отсутствие двойного списания и восстановимость.

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

Как создавать заказы и надёжно отправлять счета

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

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

Назовите три основных преимущества внедрения брокера сообщений в архитектуру.

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

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

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

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

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

Возможно ли реализовать модель request-response через Kafka, чтобы получить подтверждение обработки?

Да, поверх Kafka можно построить request-response с correlation ID и каналом ответов. Это прикладной протокол: подтверждение записи сообщения брокером не равно подтверждению бизнес-обработки.

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

Можешь описать какой-то бизнес-сценарий на уровне архитектуры приложения? Например, как пользователь меняет тариф или совершает какое-то действие — разложи это на уровне архитектуры.

Для смены тарифа клиент отправляет запрос, backend проверяет пользователя и допустимость перехода, фиксирует операцию и обновляет доступ после подтверждённого бизнес-события. Детали зависят от оплаты и архитектуры.

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

Как клиент получает результат обработки запроса при использовании Kafka?

Kafka сама не возвращает бизнес-результат исходному HTTP-клиенту. Обычно API выдаёт идентификатор операции, а клиент узнаёт итог через polling, WebSocket, SSE или согласованный callback.

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

Объясните, как вы бы спроектировали фреймворк автоматизации тестирования с использованием Pytest и Selenium для веб-приложения.

Разделите сценарии, объекты страниц, фикстуры окружения и тестовые данные. Pytest организует запуск и зависимости, Selenium выполняет действия в браузере; отчёты помогают разбирать падения.

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

Как изменится архитектурный подход, если вместо фоторедактора разрабатывается видеоредактор?

Видеоредактор добавляет временную шкалу, синхронизацию аудио и видео, большие объёмы данных и длительный рендер. Понадобятся потоковая обработка, preview/proxy и управление фоновыми задачами.

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

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

Узкими местами могут стать сеть, диски брокеров, репликация, память клиентов, медленная обработка и неравномерность партиций; важны также лимиты сообщений и восстановление после сбоя.

Читать ответ