Ctrl K

Библиотека вопросов

Вопросы с настоящих собесов. Любой можно отработать голосом за пару минут — с интервьюером, баллом и разбором.

Как бы вы спроектировали простой сервис сокращения ссылок — что-то вроде bit.ly?Backend · ДизайнJuniorОбъясни разницу между репликацией и шардированием: какую проблему решает каждое, и с какими сложностями ты столкнёшься.ТеорияMiddleОбъясни стратегию cache-aside: как читаются и пишутся данные, как ты решаешь проблему устаревания и что будет при массовом истечении ключей.ТеорияMiddleОбъясни, как ты защитишь сервис от падения зависимостей: какие таймауты, ретраи и circuit breaker поставишь, и как поймёшь, что что-то пошло не так.ТеорияMiddleОбъясни, почему для горизонтального масштабирования сервис должен быть stateless и как балансировщик распределяет нагрузку между экземплярами.ТеорияMiddleОбъясни, что значит «доставка как минимум один раз» и как сделать обработчик сообщений идемпотентным, чтобы повтор не испортил данные.ТеорияMiddleРасскажи, как ты строишь ответ на System Design собеседовании: с чего начинаешь, какие вопросы задаёшь, и как оцениваешь нагрузку.ТеорияMiddleСпроектируйте rate limiter для публичного API: например, не больше 100 запросов в минуту на один API-ключ. Сервис работает на нескольких инстансах.Backend · ДизайнMiddleСпроектируйте загрузку и обработку пользовательских фотографий: пользователь загружает изображение, сервис делает превью нескольких размеров и показывает их в ленте.Backend · ДизайнMiddleСпроектируйте сервис коротких ссылок: пользователь отдаёт длинный URL и получает короткий, а переход по короткой ссылке перенаправляет на оригинал.Backend · ДизайнMiddleСпроектируйте сервис уведомлений, который по событиям из других сервисов отправляет пользователям email, push и SMS, — до нескольких миллионов уведомлений в день.Backend · ДизайнMiddleСпроектируйте ленту новостей для соцсети: пользователи подписываются друг на друга, лента должна открываться мгновенно, а у некоторых авторов миллионы подписчиков.Backend · ДизайнSeniorСпроектируйте сервис выписок: клиент в приложении запрашивает выписку по счёту в PDF за произвольный период, вплоть до нескольких лет.ДизайнSeniorСпроектируйте сервис загрузки и хранения пользовательских файлов размером до нескольких гигабайт, например видео.Backend · ДизайнSeniorСпроектируйте сервис лимитов: у клиента есть дневные и месячные лимиты на переводы и снятия наличных, и каждую операцию нужно проверить до проведения.ДизайнSeniorСпроектируйте сервис переводов по номеру телефона между клиентами банка: от нажатия кнопки «Перевести» до зачисления денег получателю.ДизайнSeniorСпроектируйте сервис уведомлений: push, email и SMS, около пятидесяти миллионов уведомлений в сутки, с пиками во время маркетинговых рассылок.Backend · ДизайнSeniorСпроектируйте систему антифрода для онлайн-переводов, которая должна вынести решение до того, как деньги уйдут со счёта.ДизайнSeniorСпроектируйте систему продажи билетов на концерт, где в момент старта продаж приходят сотни тысяч человек на несколько тысяч мест.Backend · ДизайнSeniorСпроектируйте строку поиска с автодополнением для крупного маркетплейса: от ввода символа до отображения подсказок.Frontend · ДизайнSenior