Как организовать сессию внешней проверки личности
Backend создаёт привязанную к пользователю сессию проверки и выдаёт клиенту только ограниченный клиентский доступ. Итоговый статус подтверждается сервером, а не сообщением UI.
Читать ответПодготовка к интервью
889 вопросов по System Design
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «System Design», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: backend, api, database.
Каталог
Backend создаёт привязанную к пользователю сессию проверки и выдаёт клиенту только ограниченный клиентский доступ. Итоговый статус подтверждается сервером, а не сообщением UI.
Читать ответНачните с ролей, сценариев записи и правил доступности времени. Главный инвариант — одна допустимая запись на ресурс и временной интервал.
Читать ответВыбор frontend-стека для небольшой команды начинайте с требований продукта, опыта разработчиков и стоимости сопровождения, а не с популярности фреймворка.
Читать ответДля небольших готовых роликов обычно достаточно файлового или объектного хранилища и доставки через CDN; сами видео не обязательно хранить в базе.
Читать ответДо кода уточните размеры XML, требования к проверке, длительность обработки, доступ, формат протокола и ожидания по отмене/повтору. Затем спроектируйте асинхронный жизненный цикл задания.
Читать ответЗадания обрабатывает отдельный worker, связывая чанки и финальный результат с operation ID. Состояние должно сохраняться независимо от долгого HTTP-запроса.
Читать ответВыделите страницу-контейнер, панель поиска/фильтров/сортировки, список, карточку дела и состояния загрузки/ошибки. Загрузку и пагинацию держите в отдельном слое данных.
Читать ответВозникнут водопады запросов, дублирование логики и повторная загрузка уже полученных данных. Нужны согласованный слой загрузки и безопасная передача начального снимка клиенту.
Читать ответХраните эффекты как типизированные события сценария с привязкой к фрагменту, а воспроизведение поручите отдельному контроллеру. Не смешивайте текст рассказа с исполняемым кодом.
Читать ответРазделите задачу на модель упоминаний, уведомления, события аналитики и напоминания, предварительно согласовав права и пользовательские сценарии.
Читать ответВыделите маршруты и страницы, предметные модули каталога и заказа, общие UI-компоненты и слой API. Серверное состояние отделите от локальных настроек интерфейса.
Читать ответНужно сохранить URL-контракты, прямые ссылки, историю браузера и правила доступа, а затем определить границы старого и нового интерфейсов.
Читать ответ