Ответ вслух Middle Рассказ о проектах спрашивают часто обновлено

Самая сложная техническая задача

Вопрос

Расскажите о самой сложной технической задаче, которую вы решали.

Попробуйте сами

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

Показать ответ и разбор

Коротко

Пример для middle-бэкенда (вымышленный персонаж Олег): «Сложнее всего был плавающий баг: раз в несколько дней у части пользователей дважды списывались деньги. Сложность в том, что воспроизвести локально не получалось.

Что должно прозвучать в ответе

  • Объяснил, почему задача была сложной, а не просто большой

  • Описал ход поиска решения, включая отброшенные варианты

  • Показал, как проверял гипотезы: метрики, логи, профайлер

  • Назвал итог и как убедился, что решено

  • Не ушёл в детали, непонятные без контекста

Что могут спросить следом

  • Сколько времени ушло?
  • Кто помогал?
  • Как предотвратили повторение?

Разбор

Пример для middle-бэкенда (вымышленный персонаж Олег): «Сложнее всего был плавающий баг: раз в несколько дней у части пользователей дважды списывались деньги. Сложность в том, что воспроизвести локально не получалось. Я добавил в логи идентификатор запроса и увидел, что при таймауте платёжного шлюза клиент повторял запрос, а у нас не было защиты от повторов. Рассматривал блокировку в Redis, но выбрал ключ идемпотентности в таблице платежей с уникальным индексом: это проще и переживает перезапуски. После выкатки двойных списаний не было ни одного за полгода. Ещё добавил алерт на повторные запросы с одним ключом, чтобы видеть проблемы шлюза раньше.»

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.