Подборка объединяет вопросы, отмеченные на этапах интервью в Т-Банк. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: backend, database, api.
Как обеспечить надёжность вызова внешнего сервиса при высокой нагрузке? Архитектура: асинхронное обращение через очередь сообщений Использовать очередь (RabbitMQ, Kafka) для буферизации запросов Добавить механизм…
Как написать SQL-запрос для выбора профилей с >10 постами? область: SQL, агрегирование и группировка для подсчета постов применяется агрегатная функция COUNT() GROUP BY используется по профилю (user_id/profile_id)…
область: интеграция, отказоустойчивость, масштабирование ввести ограничение пропускной способности (rate limiting), чтобы контролировать частоту обращений к сервису применить bulkhead pattern для изоляции ресурсов и…
Exactly-once обработка в Kafka: как реализовать и что учесть Тема: обработка сообщений, Kafka, идемпотентность В основе exactly-once находится транзакционная запись в Kafka через Transaction API Применяется…
Это задача из сферы конкурентного программирования. Проблема заключается в том, что инкремент не является атомарной операцией, поэтому возможна гонка данных. Решение 1 — применить мьютексы/локи: они ограничивают…
Контекст: обработка сообщений в очередях RabbitMQ с требованием гарантировать однократное выполнение операции Идемпотентность означает, что повторная обработка одного сообщения не меняет итоговый результат Применение…
Как организовать передачу данных между двумя приложениями под одним Apple ID с помощью App Groups iOS/macOS: совместный доступ реализуется через механизм App Groups В Apple Developer необходимо создать App Group ID В…
Как обнаружить "тяжёлые" SQL-запросы без готовых метрик? анализ журналов СУБД (slow query log, general log) исследование плана выполнения с помощью EXPLAIN и EXPLAIN ANALYZE выявление запросов с большим временем…
Как ограничить частоту запросов к серверу в поиске с автокомплитом Контекст: оптимизация запросов на frontend Применить дебаунсинг: отправлять запрос только после паузы во вводе, например через 300-500 мс Добавить…
JavaScript, типизация typeof возвращает "function" безопасен для значений любого типа работает быстро и не создаёт лишних затрат доступен во всех браузерах и средах выполнения подходит для проверки функций, методов и…
Оптимизация SQL-запроса для постов пользователей с >500 подписчиками контекст: оптимизация запросов с использованием join и фильтрацией NULL создать индексы для колонок, участвующих в фильтрации и соединении, например…
Асинхронная передача сообщений через очередь Обработка с гарантией доставки один раз (at-least-once / exactly-once — в зависимости от реализации) Централизованное хранение событий с уникальными метками Разделение…