imangazaliev.dev

🧑‍💻 Как я провожу финальные собеседования

19 мая 2024
Лого Imangazaliev Blog
Imangazaliev Blog
О карьере в IT, управлении и личной эффективности.
miscommunication

Интро

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

  • Скрининг с HR
  • Технические секции: алгоритмы, платформа и архитектура
  • Финальное собеседование

На скрининге HR спрашивает соискателя об опыте, мотивации, ожиданиях и текущем статусе поиска работы. Вместе с этим он оценивает уровень коммуникации.

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

Вся информация фиксируется в профиле кандидата, в нем хранится информация и о предыдущих попытках устройства в компанию .

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

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

Мой проект — внутренняя админка с небольшим количеством пользователей, но важная для бизнеса. От разработчика в не требуются никаких особых технических знаний, достаточно в определенной степени знать стек проекта. При этом важны автономность (команда небольшая, нет возможности долго заниматься обучением) и хорошие навыки коммуникации (приходится много общаться со смежниками).

Собеседование

interview

Если с кандидатом хотят пообщаться несколько лидов, то финальных встреч может быть несколько — не больше 2-3 лидов на созвон. По опыту 2 лида — это комфортный предел, после которого собеседующие начинают мешать друг другу.

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

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

Собеседование начинается с короткого знакомства и рассказе о плане встречи. Обычно при общении один на один собес длится минут 40. Из них бо́льшую часть времени кандидат рассказывает о своем опыте и отвечает на вопросы, а последние минут 10 я рассказываю о нашем проекте и команде, после чего отвечаю на вопросы кандидата. По ходу созвона я веду заметки — по ним можно складывать картинку в голове, задавать уточняющие вопросы и написать отзыв.

architecture slide

Для рассказа о нашем сервисе у меня заготовлена специальная презентация, красиво оформленная нашими дизайнерами — она позволяет наглядно рассказать о продукте, технологиях, команде, процессах и наших планах. Кроме этого я вкратце рассказываю чем предстоит заниматься.

Иногда после собеседования в паре мы созваниваемся, чтобы обменяться впечатлениями о кандидате.

По итогу финалов лиды оставляют фидбек, где указывают рассматривают ли они кандидата и на какой грейд (уровень) готовы его взять. Если кандидат понравился нескольким лидам, то он сам выбирает команду, к которой хочет присоединиться.

Также у Яндекса (возможно, и у других компаний) есть программа буткемпа, по которой кандидат работает в нескольких командах по 2 недели и по итогу выбирает ту, где хочет остаться. Такой подход позволяет команде и кандидату увидеть друг друга в деле и снижает риск ошибочного выбора.

Вопросы

questions

В самом начале я прошу кандидата рассказать о своем опыте. Обычно это пара последних мест работы. По ходу рассказа пытаюсь выстроить в голове цельную картину.

Какие вопросы я обычно задаю?

Общие

  • Кем вы видите себя через 5 лет?
  • Что представляет из себя продукт?
  • Какие технологии использовали? Почему?
  • Какая была архитектура?
  • Расскажи о команде: какие роли, сколько человек?
  • Как были выстроены процессы?
  • Почему ты хочешь сменить компанию (особенно, если работает там недавно)?

Коммуникация

  • Как происходило взаимодействие со смежниками (дизайнеры, бэк, аналитики)?

Понимание процессов

  • По какой методологии работали?
  • Откуда приходили задачи?
  • Как происходил деплой?

Интересы

  • Какие задачи интересны?

Лидерские навыки

  • Был ли опыт руководства?
  • Насколько интересно управлять людьми?

Прочее

  • Когда готов выйти на работу?

Также задаю вопросы, записанные ранее на основе профиля кандидата + какие-то вопросы появляются по ходу беседы.

Один из самых важных вопросов: «Расскажи о самой большой / сложной задаче, которую тебе приходилось решать (можно несколько)». Важен он потому, что масштаб решаемых задач влияет на итоговую оценку. В процессе рассказа важно отделять личные достижения от командных, уточняя: «Что из этого делал ты лично?».

Некоторые собеседующие пытаются оценить различные компетенции, задавая по каждой из них по несколько вопросов. Я пока не настолько искушенный интервьюер, поэтому опираюсь на собственное восприятие.

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

  • Что ждешь от команды / проекта / компании?
  • Что ждешь от руководителя?

Намного лучше работают такие вопросы:

  • Что нравится в текущей работе? Что можно было бы улучшить (или не нравится)?
  • Что нравится в текущей команде? Что можно было бы улучшить?
  • Что нравится в текущем руководителе? А что не нравится?

На что обращаю внимание?

  • Общая адекватность
  • Насколько последовательно и понятно объясняет
  • Насколько легко общаться — не приходится вытягивать информацию по крупицам
  • Углубляется ли в детали или рассказывает поверхностно

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

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

Также стараюсь не привязываться сильно к оценкам других лидов, независимо от того позитивный это фидбек или негативный.

Почему важно точно определить грейд?

Финальный грейд (уровень разработчика) выставляют лиды и для одного и того же кандидата она может отличаться: кто-то оценил кандидата как мидла, а другой увидел в нем сеньора.

Грейд — штука местами субъективная и тут есть вероятность ошибиться. У каждого грейда есть ожидания от него и зарплатная вилка. Лиды не знают вилки (но могут примерно их прикинуть).

Если поставить кандидату оценку ниже реальной, то могут не совпасть зарплатные ожидания кандидата и вилка и он может отказаться от оффера. Если переоценить кандидата, то могут возникнуть сложности с его защитой на ревью (подробнее об этом расскажу в одном из следующих постов, ин шаа Ллах).

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

Что мне дает опыт собеседования

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

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

Если есть такая возможность, такой определенно стоит получить.

Полезные материалы