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

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

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

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

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

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

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

Каталог

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

Найдено: 889
System Design

Предположим, у нас есть React Native приложение и веб-приложение. Некоторые браузерные API, включая Local Storage, недоступны в React Native (там используется Async Storage). Как бы вы реализовали единый интерфейс для стора с разными реализациями хранения данных для веба и React Native?

Определите асинхронный интерфейс хранилища и внедряйте платформенный адаптер вместо прямых вызовов localStorage.

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

Есть микросервисная система: сервис книги возвращает название, описание, ID автора и издателя; отдельные сервисы возвращают автора, издателя и список ID книг автора; последний сервис возвращает названия книг по массиву ID. Как на странице книги оптимально получить и показать название, описание, автора, издателя и список книг автора, минимизировав ожидание пользователя и лишние рендеры?

После книги запускайте независимые ветви параллельно: автора, издателя и цепочку получения списка книг автора.

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

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

Оценка одновременных соединений: скорость установления соединений × средняя длительность, с поправкой на пик и число сессий пользователя.

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

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

Масштаб архитектуры должен соответствовать продукту: простой сайт, магазин и многокомандное приложение требуют разных границ.

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

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

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

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

Спроектируйте мессенджер: изучите функциональные требования, сформулируйте нефункциональные требования, выберите технический стек, опишите фронтенд-архитектуру и компонентную схему, взаимодействие с бэкендом, API и модели данных, а затем системный дизайн.

Начните с требований к диалогам и доставке, затем разделите клиент, realtime-шлюз, сервис сообщений и постоянное хранилище.

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

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

Клиент может получить HTML одной версии и CSS/JS другой, частично записанный файл или 404 на ещё не загруженный ассет.

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

Ты упомянула сессию пользователя — что нам нужно изменить в нашем API, чтобы учитывалась авторизация/сессия пользователя (прогресс, доступные квизы)?

Нужно идентифицировать пользователя на сервере и привязать прогресс и доступ к его учётной записи.

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

Сколько пользователей у нас будет? Нужна ли SEO-оптимизация? Нужна ли локализация? Какие метрики нужно собирать?

Эти вопросы уточняют требования до проектирования: нагрузку, публичность контента, языки и критерии успеха.

Читать ответ