Блог

Всеволод Фролов
Начальник отдела управления проектами

Как мы собеседуем IT-специалистов для веб-проектов

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

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

Кадр из сериала «Форс-мажоры» (Suits, 2011)

Итак, предположим, что «Актион» подходит кандидату (а вы еще сомневались?). Теперь нужно проверить, подходит ли кандидат  «Актиону». По собственному опыту знаю, что вести беседу в ключе: «а вот эту технологию вы знаете? – о да, знаю», – это плохая практика. Хорошая практика – выяснять, сможет ли кандидат выполнять возложенные на него обязанности, то есть нужно не спрашивать о знаниях, а выявлять их наличие.

Сначала – несколько вопросов общего плана: об учебе, опыте, биографии. Они нужны для налаживания контакта, для создания доверительной атмосферы.

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

  • базовые принципы технологии клиент-сервер, основы протокола http, запросы и ответы, заголовки, типы ответов и ошибок;
  • элементарные вопросы по языку разметки html и стилям, конечно, если мы собеседуем не верстальщика, для него вопросы должны быть посложнее;
  • базы данных, типы запросов, джойны, целостность, нормализация;
  • клиентский и серверный код, особенности и отличия;
  • веб-серверы;
  • ДНС;
  • веб-сервисы;
  • основы почтовых протоколов;
  • типы файлов, текстовые, бинарные, кодировки;
  • типы графических файлов, отличие растровой от векторной графики.

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

Я люблю спрашивать об инструментарии, который человек применяет в работе. Что за набор софта стоит у вас на рабочем компьютере? А каким текстовым редактором вы предпочитаете пользоваться? В чем вы верстаете? Или, например, что вы используете для просмотра графических файлов?

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

Можно предложить какой-нибудь случай из жизни, разобрать, как бы действовал кандидат. Например, вы обнаружили на боевой площадке чужеродный файл, не относящийся к проекту, и подозреваете, что он уже был запущен и находится в памяти. Каковы ваши действия? Еще, к примеру, ваш сайт подвергается DDOS-атаке, снаружи он недоступен, какие действия и в каком порядке вы будете предпринимать? Даже если я собеседую не сисадмина, ответы будут отличной пищей для размышлений о том, подходит ли компании этот кандидат.
Может получиться, что кандидат оказался круче того уровня, который определен для данной позиции. Даже если кандидат согласен на работу, стоит подумать, будет ли ему интересно заниматься задачами по окончании испытательного срока. Возможно, придется искать нового кандидата. На мой взгляд, лучше всего объяснить кандидату, что предлагаемая позиция может оказаться для него неинтересной. Не придется мучаться с ним в дальнейшем, самооценка кандидата повысится, интервьюер улучшит свою карму :)