Перейти к основному содержимому

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

Вопросы на собеседовании Backend-разработчика

25 вопросов на собеседовании backend-разработчика: SQL и индексы, транзакции, кэширование Redis, очереди Kafka и RabbitMQ, проектирование API и микросервисы.

Поделиться:TGVKWA
SQL и проектирование БДТранзакции и изоляцияREST и gRPC APIКэширование (Redis)Очереди (Kafka, RabbitMQ)Микросервисная архитектураТестирование и код-ревьюНаблюдаемость (логи, метрики, трейсинг)

📈 Готовитесь к собеседованию? Получайте свежие вакансии Backend-разработчик на почту или в Telegram — и откликайтесь, пока подготовка свежая.

бесплатно
Бесплатно, без регистрации

Мини-собеседование: Backend-разработчик

Прочитать вопросы мало — на интервью придётся говорить. Ответьте на один вопрос своими словами, 2–3 предложений хватит, и ИИ разберёт ответ по четырём критериям: структура, конкретика, релевантность, убедительность.

123
Технический вопросДля всех уровней

Запрос к базе стал выполняться медленно после роста таблицы. Как вы будете искать причину?

2–3 предложения достаточно · ещё 20 симв.

Типовые вопросы и подсказки к ответам

Используйте подсказки как каркас ответа: добавьте свои проекты, метрики, ограничения и выводы. Любой вопрос можно тут же проговорить — кнопка «Ответить и получить разбор ИИ» отправит его в мини-собеседование выше.

Технический вопрос

Вопрос 1Для всех уровней

Запрос к базе стал выполняться медленно после роста таблицы. Как вы будете искать причину?

Показать подсказку ▾

Как отвечать: Покажите методичность: EXPLAIN/EXPLAIN ANALYZE, проверка использования индексов, статистика таблицы, кардинальность — и как проверите эффект после исправления.

Вопрос 2Middle

Как работают индексы в PostgreSQL/MySQL и когда индекс не используется?

Показать подсказку ▾

Как отвечать: Объясните B-tree, составные индексы и порядок колонок, селективность; назовите типичные случаи: функция над колонкой, LIKE с ведущим %, несовпадение типов.

Вопрос 3Для всех уровней

Что такое транзакция и уровни изоляции? Приведите пример, где READ COMMITTED недостаточно.

Показать подсказку ▾

Как отвечать: Расскажите про ACID, аномалии (грязное и неповторяющееся чтение, фантомы) и пример из практики: бронирование, списание со счёта — и почему выбрали REPEATABLE READ или SERIALIZABLE.

Вопрос 4Middle

Чем пессимистичная блокировка отличается от оптимистичной и когда что применять?

Показать подсказку ▾

Как отвечать: Сравните SELECT FOR UPDATE с версионированием (поле version), опишите цену каждого подхода при высокой конкуренции и приведите реальный кейс.

Вопрос 5Для всех уровней

Как вы спроектируете схему БД для интернет-магазина: товары, заказы, остатки?

Показать подсказку ▾

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

Вопрос 6Senior

Таблица выросла до сотен миллионов строк и мешает миграциям и запросам. Ваши варианты?

Показать подсказку ▾

Как отвечать: Обсудите партиционирование, архивацию холодных данных, шардирование как крайнюю меру, онлайн-миграции (pg_repack, gh-ost) и честно назовите цену каждого решения.

Вопрос 7Для всех уровней

Как вы проектируете REST API: версионирование, коды ошибок, пагинация?

Показать подсказку ▾

Как отвечать: Назовите конкретику: версии через URL или заголовок, идемпотентность POST, cursor-based против offset-пагинации, единый формат ошибок и корректные HTTP-статусы.

Вопрос 8Middle

Когда вы выберете gRPC или брокер сообщений вместо REST между сервисами?

Показать подсказку ▾

Как отвечать: Покажите понимание компромиссов: синхронный вызов против асинхронного события, контракты protobuf, связанность сервисов, отладка и трассировка.

Вопрос 9Для всех уровней

Зачем нужен кэш и какие проблемы он приносит?

Показать подсказку ▾

Как отвечать: Упомяните снижение нагрузки на БД и latency, а из проблем — инвалидацию, несогласованность, cache stampede; расскажите про TTL и паттерн cache-aside.

Вопрос 10Middle

Как вы используете Redis помимо кэша?

Показать подсказку ▾

Как отвечать: Приведите примеры: распределённые блокировки и их подводные камни, rate limiting, очереди на Streams, хранение сессий — и почему Redis, а не отдельный инструмент.

Вопрос 11Middle

Как устроена доставка сообщений в Kafka/RabbitMQ и что такое семантика at-least-once?

Показать подсказку ▾

Как отвечать: Объясните партиции и consumer group у Kafka или exchange и очереди у RabbitMQ, почему дубликаты неизбежны и как делаете потребителей идемпотентными.

Вопрос 12Для всех уровней

Расскажите про ваш основной язык: как устроена работа с конкурентностью в нём?

Показать подсказку ▾

Как отвечать: Говорите о том языке, который в вакансии: горутины и каналы в Go, GIL и asyncio в Python, виртуальные потоки и CompletableFuture в Java — с примером из своего кода.

Вопрос 13Junior

Чем список отличается от хеш-таблицы и когда какую структуру данных выбирать?

Показать подсказку ▾

Как отвечать: Покажите понимание сложности операций: поиск O(1) против O(n), упорядоченность, память — и пример, где неправильный выбор структуры замедлил сервис.

Вопрос 14Middle

Как вы пишете тесты для backend-сервиса: что покрываете unit, а что интеграционными?

Показать подсказку ▾

Как отвечать: Опишите пирамиду тестов, изоляцию бизнес-логики, Testcontainers для интеграционных тестов с реальной БД, контрактные тесты — и какую метрику покрытия считаете разумной.

Вопрос 15Middle

Что вы смотрите на код-ревью в первую очередь?

Показать подсказку ▾

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

Вопрос 16Middle

Как вы защищаете backend-приложение от типичных атак?

Показать подсказку ▾

Как отвечать: Назовите по существу: параметризованные запросы против SQL-инъекций, валидация входных данных, CORS и CSRF-токены, rate limiting и хранение секретов вне кода.

Вопрос 17Senior

Как вы обеспечиваете наблюдаемость сервиса в проде?

Показать подсказку ▾

Как отвечать: Пройдите по трём столпам: структурированные логи с correlation id, метрики RED/USE и алерты по SLO, распределённый трейсинг (OpenTelemetry, Jaeger) — и пример, как это помогло найти проблему.

Резюме открывают раньше, чем зовут на собеседование. Соберите версию под «Backend-разработчик» с ИИ — около 10 минут, начать можно бесплатно.

Резюме под эту роль

Кейс

Вопрос 1Senior

Кейс: платёж списался, но заказ не создался, потому что второй сервис был недоступен. Как проектировать такие процессы?

Показать подсказку ▾

Как отвечать: Расскажите про паттерн Saga и outbox, компенсирующие операции, идемпотентные ключи и почему распределённая транзакция между сервисами — плохая идея.

Вопрос 2Middle

Кейс: сервис деградирует под пиковой нагрузкой — растёт latency и ошибки 5xx. Ваш план действий?

Показать подсказку ▾

Как отвечать: Опишите порядок: метрики и трейсинг для локализации узкого места, пулы соединений и таймауты, circuit breaker и backpressure, горизонтальное масштабирование — и пост-инцидентный разбор.

Поведенческий вопрос

Вопрос 1Для всех уровней

Расскажите о самом сложном техническом решении, которое вы принимали.

Показать подсказку ▾

Как отвечать: Ответьте по STAR: контекст и ограничения, рассмотренные альтернативы, почему выбрали именно это решение и чем подтвердили его правильность в проде.

Вопрос 2Для всех уровней

Приведите пример, когда вы допустили ошибку, которая дошла до прода. Что сделали?

Показать подсказку ▾

Как отвечать: Покажите честность и зрелость: как обнаружили и откатили, постмортем без поиска виноватых, какие тесты или процессы добавили, чтобы не повторилось.

Вопрос 3Middle

Как вы реагируете, когда тимлид или ревьюер не согласен с вашим техническим решением?

Показать подсказку ▾

Как отвечать: Опишите аргументацию данными и прототипом, готовность признать сильные контраргументы и умение принять командное решение без обид.

Вопрос 4Для всех уровней

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

Показать подсказку ▾

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

Вопрос 5Middle

Приходилось ли вам разбираться в чужом коде без документации и автора рядом? Как действовали?

Показать подсказку ▾

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

Вопрос 6Для всех уровней

Почему вы хотите работать backend-разработчиком именно у нас?

Показать подсказку ▾

Как отвечать: Изучите компанию заранее: свяжите ответ с её стеком, масштабом нагрузки и продуктом, назовите, что готовы привнести из своего опыта, избегая общих фраз про развитие.

Готовы отвечать — а резюме уже под эту роль?

До собеседования резюме ещё нужно открыть. Соберите адаптированное резюме для «Backend-разработчик» за ~10 минут: ИИ сформулирует опыт, навыки и достижения под требования работодателей.

Собрать резюме под эту роль
PRO

Проверьте себя: первый разбор — бесплатно

Прочитать вопросы — это старт. Настоящая подготовка — проговорить ответ и услышать, что с ним не так. Первый разбор ИИ бесплатный и без регистрации, прямо на этой странице. Полная симуляция — в PRO или разово, без подписки.

  • Реальные вопросы по вашей роли
  • Разбор ответов с ИИ
  • Оценка и советы

План подготовки

  1. 1Повторите SQL на практике: индексы, планы запросов через EXPLAIN, транзакции и уровни изоляции — с примерами аномалий.
  2. 2Освежите архитектурные паттерны: кэширование, очереди и идемпотентность, Saga и outbox, компромиссы микросервисов против монолита.
  3. 3Подготовьте рассказ о 2–3 своих проектах: стек, нагрузка, узкие места и конкретные решения, которые принимали лично вы.
  4. 4Разберите по STAR один инцидент из прода и одну свою ошибку: интервьюер почти наверняка спросит про оба.
  5. 5Пройдите пробное интервью в ИИ-тренажёре Rabota-Help и потренируйтесь отвечать на кейсы структурированно и без пауз.

Частые ошибки

  • Отвечать на вопрос о медленном запросе «добавлю индекс», не упомянув анализ плана выполнения и статистику.
  • Хвалиться микросервисами, но не уметь объяснить, как обеспечить согласованность данных между ними.
  • Говорить про кэш и очереди без слов про инвалидацию, дубликаты и идемпотентность.
  • Рассказывать о проектах «мы сделали», не выделяя личный вклад и собственные технические решения.
  • Не задать вопросов о стеке, нагрузке, процессах код-ревью и дежурствах в команде работодателя.
Практика интервью

От вопросов — к тренировке интервью

Прочитайте вопросы, выберите 5–7 самых сложных и пройдите пробное интервью. ИИ-интервьюер поможет структурировать ответы, проверить аргументацию и подготовиться к реальному разговору.

Открыть тренажёр для роли Backend-разработчик
Зарплата

Зарплата Backend-разработчик в России

По данным 81 вакансий

Полная статистика →

P25 (ниже среднего)

89 000 ₽

Медиана

163 000 ₽

50% вакансий

P75 (выше среднего)

229 000 ₽

Медиана по уровню опыта

1–3 года

96 000 ₽

3–6 лет

225 000 ₽

6+ лет

89 000 ₽

Навыки

Востребованные навыки Backend-разработчика

Частота упоминания в вакансиях работодателей

Все навыки →
1
API7%
2
Docker7%
3
Git6%
4
PostgreSQL5%
5
Python5%
6
CI/CD4%
7
C#3%
8
.NET3%

Вы готовитесь к собеседованию. А работодатели уже ищут Backend-разработчика.

Создайте анонимный публичный профиль — его найдут в Яндексе и Google, и предложения придут сами. Контакты скрыты, пока вы не решите иначе.

Работодатели уже ищут: Backend-разработчик · от 163 000 ₽

Создать анонимный профиль — бесплатно

Пройдите мини-собеседование, добавьте резюме на экране результата — профиль создадим за минуту, с вашего согласия.

Вы нанимаете Backend-разработчика? Профили кандидатов и подбор для работодателей →

Вакансии

Свежие вакансии Backend-разработчика: 1 057

Откройте подходящие предложения и откликнитесь после подготовки к собеседованию.

Смотреть вакансии →