Поведенческое интервью проверяет не харизму и не «культурный фит» в рекламном смысле. Проверяет, как вы действуете, когда тикет неясный, релиз уже в проде, вы не согласны с решением или сами ошиблись. Код на этом этапе почти не пишут. Смотрят, можно ли вас поставить в команду без постоянного присмотра и без яда в ретро.

Лучший рабочий инструмент здесь — STAR без произнесения названия метода вслух: ситуация, задача на вас, ваши действия, результат и одна фраза урока. Чем выше грейд, тем больше веса у этого этапа — это видно по senior-слотам. Базовый набор HR-вопросов — в вопросах на собеседовании. Самопрезентация — отдельный блок: рассказать о себе, не вшивая туда конфликт и вилку.

Коротко:

  • Готовьте 6–8 историй из последних двух-трёх лет, не 80 заученных формулировок.
  • В действии говорите «я», не прячьтесь за «мы», и не геройствуйте в одиночку вопреки фактам.
  • Результат — число, срок, снятый риск или честный провал плюс что изменили.
  • Одна история закрывает несколько вопросов, если меняете акцент.
  • Абстракции «в целом я за коммуникацию» на этом этапе равны пустому ответу.

Что интервьюер пытается предсказать

Будете ли вы эскалировать вовремя или молчать три дня. Умеете ли спорить с решением без театра. Берёте ли ошибку на себя или ищете козла. Помогаете ли смежным ролям или кидаете через забор. На junior смотрят зачатки этого на проектах и практике. На middle — регулярность. На senior — влияние на процесс, не только личный тикет. Смотреть, какого объёма слот, удобно по senior-вакансиям и по описанию дежурств в обычных backend-ролях.

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

STAR, который звучит как речь, а не как слайд

  • Situation. Два предложения: продукт, что сломалось или было неясно, ограничение по времени. Не история компании с 2018 года.
  • Task. Что было на вас. Граница: чего вы не могли решить (провайдер, чужой сервис, решение бизнеса).
  • Action. Два-три шага, которые делали вы. Имена ролей, с кем согласовали. Без списка из десяти «ещё я».
  • Result. Измеримый итог или честный минус. «Стало лучше» без якоря — слабый конец.
  • Урок. Одна фраза. Вторая уже нравоучение.

На скрининге хватает сжатого STAR на 45–60 секунд. На менеджерском можно полторы минуты, глубже в действие. Если на второй минуте вы всё ещё описываете оргструктуру — вы уже не про себя.

Банк из восьми сюжетов

Выпишите на одну страницу. Для каждого: контекст, ваша роль, два шага, итог, урок. Типы, которые закрывают большую часть вопросов:

  1. Фича или сервис до продакшена со сопротивлением или неясной постановкой.
  2. Инцидент или горящий баг.
  3. Ошибка, которую допустили вы, и как закрывали.
  4. Несогласие с техническим или процессным решением.
  5. Жёсткий дедлайн и что вырезали, чтобы успеть.
  6. Работа со смежной ролью: поддержка, QA, продукт, соседняя команда.
  7. Узкое место, которое вы сами замедляли — заготовка на слабую сторону.
  8. Кусок, которым гордитесь — заготовка на сильную, с фактом, не с прилагательным.

Junior без длинного штата берёт проекты, практику, волонтёрство, очередь в поддержке. Принцип тот же, что в письме без опыта: артефакт важнее должности. Не заполняйте банк вузом, если есть хоть один сделанный кусок работы.

На каждую карточку добавьте одну строку «куда копать дальше»: индекс, ключ идемпотентности, тикет, ссылка на постмортем. Интервьюер почти всегда задаст один уточняющий вопрос. Если за карточкой пусто, STAR звучит как заученный абзац и лопается на follow-up. Не выдумывайте проценты улучшения, которых не мерили: «очередь разобрали за двое суток» сильнее «оптимизировали на 47%».

Пример 1. Инцидент: релиз и очередь ретраев

Вопрос: «расскажите про сложную ситуацию в проде».

Ситуация: провайдер доставки начал отвечать с задержкой, сверки разъехались, в кабинете поддержки платежи висели в статусе «неизвестно», очередь ретраев за сутки выросла до нескольких тысяч.

Задача на мне была не починить провайдера, а не допустить двойных списаний и вернуть статус, который поддержка может сказать клиенту, за пару дней, пока бизнес не отключил метод.

Что сделал: остановил слепой ретрай по этому провайдеру, спорные операции увёл в ручной карман с идемпотентным ключом. Вместе с QA закрыли смоук на повторное списание. В код провайдера не лезли.

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

Этот сюжет натягивается и на «как вы работаете в инциденте», и частично на «сотрудничество с QA». Не ругает провайдера как главного злодея и не спасает компанию в одиночку. Похожий английский каркас — в интервью на английском.

Пример 2. Конфликт: не согласились с «давайте зашьём костыль в прод»

Вопрос: «был ли конфликт в команде / не соглашались с решением».

Ситуация: перед релизом фичи скидок продукт просил отдать расчёт на клиент, «так быстрее, бэкенд не успевает». Скидка уже крутилась в админке, риск — разные суммы в корзине и на оплате.

Задача на мне как на backend: не пропустить расхождение, которое поддержка потом не разберёт, и при этом не сорвать дату, которую уже озвучили клиентам.

Что сделал: не спорил «в принципе клиент плохой». Собрал два примера, где округление на клиенте уже разъехалось бы с нашими правилами, показал на встрече. Предложил компромисс: на дату отдаём упрощённое правило на бэке, без трёх краевых типов скидок, их выносим на следующую неделю. Зафиксировали в тикете, что клиент только отображает, не считает.

Результат: релиз в срок с урезанным набором, расхождений на оплате не было. Два типа скидок ушли спринтом позже. Урок: спор без примера и без урезанного плана звучит как упрямство; спор с примером и датой — как инженерия.

Интервьюер слышит, что вы умеете не проигрывать дату и не сдавать инвариант. Нет яда в адрес продакта. Нет «я настоял и все поняли, что я прав».

Пример 3. Ошибка, которую сделали вы

Вопрос про ошибку ловит тех, кто либо врёт «у меня их не бывает», либо тонет в исповеди. Нужна рабочая механика.

Ситуация: я выкатил миграцию, которая добавляла колонку как NOT NULL без дефолта, на таблице, куда писал ещё старый воркер. На стейджинге воркер уже был обновлён, на проде — нет. Часть записей начала падать.

Задача: остановить порчу, откатить или доехать безопасно, не прятать причину.

Что сделал: откатил деплой приложения, колонку перевёл в nullable, доехал воркер, затем второй миграцией ограничение. Написал короткий постмортем: почему стейджинг соврал, чеклист «старый писатель ещё жив». Не искал виноватого в девопсе — миграцию ставил я.

Результат: инцидент закрыли за час, повторных падений не было. Урок: расширяющие миграции и старые писатели проверяю явно, не верю «стейджинг зелёный».

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

Частые ошибки, из-за которых сильная история звучит слабо

  • Абстракция: «я всегда открыто коммуницирую». Нет случая — нет ответа.
  • «Мы сделали» на всём протяжении. Интервьюер не знает, что делали вы. Чередуйте: команда / я / согласовали.
  • Нет результата. История обрывается на «и вот мы задеплоили».
  • Яд в адрес прошлого работодателя как сюжет. Факт ухода — нейтрально. Яд запоминается сильнее стека.
  • Герой-одиночка, который в обход процесса спас мир. На senior это минус, не плюс.
  • Заученный абзац, который не сжимается, когда спросили «а что лично вы». Каркас держите, слова собирайте заново.

Не переносите текст из генератора. Одинаковые фразы про ownership уже набили оскомину. Ваша цифра и ограничение всегда живее.

Как натягивать одну историю на разные вопросы

Инцидент с очередью: акцент на стопе ретраев — «сложная задача»; акцент на статусах для поддержки — «работа со смежными»; акцент на «не полез в чужой код» — «границы и зрелость». Конфликт со скидками: акцент на примере округления — «не согласились»; акцент на урезанном скоупе — «дедлайн». Не выдумывайте второй вымышленный конфликт, если один настоящий закрывает оба follow-up.

Перед звонком отметьте для каждой истории, какие 2–3 вопроса она закрывает. Иначе на «расскажите ещё один конфликт» вы начнёте пересказывать тот же сюжет теми же словами — слышно.

Как тренировать, чтобы не читать эссе

Проговорите три истории вслух на диктофон. Если вам скучно на второй минуте, будет скучно и в комнате. Сократите действие до двух-трёх шагов. Цифру оставьте даже скромную: «закрыли за два дня», «убрали повторные тикеты», «не было двойного списания».

Попросите знакомого перебить: «что делали вы, не команда?» и «чем кончилось числом?». Карточки удобно гонять в подготовке к интервью. На английском слоте те же истории — не новые факты, другие слова; шаблоны — в разговорных шаблонах.

Ещё один прогон: ответьте на тот же сюжет за 40 секунд и за 90. Короткий нужен скринингу, длинный — менеджеру, который сам дал пространство. Если короткая версия теряет результат, вы режете не то: режьте оргструктуру, не итог и не ваш шаг. Если длинная расползается в биографию отдела — вернитесь к двум действиям. Это тот же навык, что на техэкране: сужать, а не лить.

Частые вопросы

Что, если не было конфликта?

Был спор о скоупе, о дате, о костыле, о том, кто дежурит. Конфликт не обязан быть скандалом. Если совсем нет трения — возьмите неясную постановку: это тоже behavioral про взрослость.

Можно ли брать историю с учёбы?

Да, если коммерческого стажа мало и есть артефакт. Нет, если за пять лет в штате вы рассказываете только курсовой. Берите свежее.

Нужно ли говорить про увольнение в STAR про конфликт?

Нет. Уход — отдельный короткий нейтральный ответ. Не превращайте behavioral в суд над бывшим руководителем.

Сколько длится нормальный ответ?

45–90 секунд. Если вас не остановили и вы всё ещё даёте контекст холдинга — затянули.

Что делать, если не помню цифры?

Порядок, срок, «перестали падать», «очередь разобрали за двое суток». Лучше честный порядок, чем выдуманные проценты. Не изобретайте точную статистику рынка или компании.

Связано ли это с зарплатой?

Нет в одной реплике. Вилка — отдельный блок: ожидания и как говорить о зарплате. Не оплачивайте слабую историю скидкой «зато недорого».

Что сделать сейчас

Сегодня выпишите восемь сюжетов на одну страницу. Выберите три и проговорите по STAR вслух, каждый до минуты. Завтра допишите пример про ошибку, если его ещё нет — этот вопрос задают часто, и импровизация здесь звучит хуже всего.

Когда банк ляжет, встройте его в общую подготовку: самопрезентация, вилка, две технические истории про свой сервис. Живые прогоны с перебиванием — в interview prep. Смотреть роли, под которые вы собираете акценты, удобно в каталоге вакансий, а не «истории на все случаи жизни».