Резюме и собеседования: взгляд кандидата и интервьюера

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

Дисклеймер. Всё написанное ниже является субъективным взглядом автора. Весь мой опыт в собеседованиях вращается вокруг уровня middle. Джуниоры, наверное, могут немного экстраполировать; синьоры и выше — читать по диагонали или не читать вообще. Но если что-то неправильно, вы с чем-то не согласны или у вас совсем по-другому — напишите в комментариях, я буду рад услышать альтернативную точку зрения.

Пропущу начальную стадию, когда очаровательные барышни-рекрутеры атакуют несчастных программистов, а те с трудом отбиваются. С ней, думаю, и так все знакомы. Речь пойдёт сугубо о технической части.

Вакансия и интервьюер

Начнём с того, что кандидат получает описание вакансии, а рекрутер — резюме кандидата, которое он затем пересылает техническому специалисту.

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

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

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

Тут сразу содержится ответ на вопросы кандидата: «Почему моё резюме так долго рассматривают?» или «Почему пригласили на собеседование аж через полторы недели?»

Резюме

Итак, рекрутер отбирает резюме и присылает их интервьюеру. Тот смотрит на каждое по 30 секунд и даёт ответ на вопрос: «Приглашать ли кандидата на собеседование?» — «Да/Нет».

Или, другими словами, пытается предугадать: «Достаточно ли уверенно владеет кандидат нужными технологиями?»

Содержание. Для того, чтобы ответить на эти вопросы, интервьюер читает раздел Skills и немного просматривает Project Description, потому как не всегда понятно, то ли кандидат прямо сейчас работает с нужным фреймворком, то ли видел его год назад из-за плеча коллеги.

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

К сожалению, указать все возможные варианты и таким образом получить зелёный пропуск на все собеседования — не сработает по описанным ниже причинам. Хотя для джунов, наверное, всё наоборот — если перечислить все библиотеки из pet-проекта, то авось что-то попадет под фильтр.

В поле «Description» обычно рекомендуют описать роль и достижения в проекте. Хорошо, если можно указать что-то типа такого: «Увеличил производительность приложения на 87,5%» или «Руководил over 9000 коллегами». А если там просто: «Писал код»? Ну ок, это можно растянуть на: «Участвовал в планировании, давал эстимейты, имплементировал фичи, правил баги». Что бы я предложил добавить — это небольшое дублирование: какие технологии из списка выше и в каком объёме использовал кандидат. Обычно эту информацию почерпнуть никак не получается, в том числе и поэтому нужно собеседование.

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

Оформление. Встречаются как шедевры полиграфии, которые я даже в отдельный каталог сохранял, с мыслью: «Какая красота, надо бы и своё с таким дивным шаблоном сделать», так и прямо противоположные примеры. Года три назад видел такое: кандидат, видимо, запустил Word и дефолтным Times New Roman размером 11 без какого-либо оформления коротко изложил о себе, технологиях и проектах. Даже не разделяя блоки пустыми строками. Получилось на треть страницы. Помню, я тогда изрядно подивился такому вопиющему пренебрежению к собственному резюме, но на собеседование пригласил. Он его успешно прошёл и дальше прекрасно работал и работает. Пользуясь случаем, передаю привет.

Итого: оформление резюме — это важно, но не очень.

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

Pre-screening. Тут я в роли интервьюера использую небольшую оптимизацию. Поскольку очное собеседование — сильно энергозатратный процесс для обеих сторон, я вначале провожу 10-минутный телефонный разговор в стиле: «У нас такой-то проект на языке J***, активно используются фреймворки S*** и H***. Вам это подходит/знакомо?» В принципе, эти вопросы ещё на этапе разговора с рекрутером обсуждаются, но лучше продублировать. И, кстати, считаю, со стороны кандидата вполне нормально отказаться, если не устраивает домен и/или стек технологий. Если возражений нет, то задаю буквально по одному базовому вопросу по каждой из тем. Таким образом, на техническое интервью приходят уже более-менее знакомые с ними люди.

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

Собеседование — это обычно вопросы-ответы. Тут следует помнить о нескольких тонкостях.

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

Рекомендации тут очевидные, но сложновыполнимые. Кандидату — знать матчасть так, чтобы отвечать со 100-процентным результатом вообще на всё. Интервьюеру — как-то приглушить своё эго и понимать, что, например, человек, переспрашивающий: «Какого Кнута?» — вполне может вполне успешно создавать веб-формы. Утрирую, конечно.

Сюда же относятся вопросы про глубины глубин и явно не связанные с проектом темы. Например, мир Java весьма велик, а мир программирования ещё больше, поэтому «завалить», мне кажется, можно любого. Правда, не совсем понятна мотивация сего деяния.

Интервьюеру не понравился кандидат, и нужно как-то обосновать отказ? Потешить своё самолюбие? Смутить кандидата? Любимая тема? А она связана с проектом? Или действительно без знания этого понятия/технологии/решения на проекте делать нечего? Ну и простой факт, что всего есть немногим более часа времени, а отказ не приближает закрытие вакансии, и придётся собеседовать дальше.

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

Кандидату, наверное, не возбраняется уточнять: «А зачем вы спрашиваете? Это реально используется?» Но, если честно, в этой роли из-за стресса у меня такое никогда не получалось.

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

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

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

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

Когда-то давно я прошёл техническое собеседование, потом менеджерское, и остался директорский финальный approve. Пару дней я подождал, потом сам стал звонить, но директор был то на встрече, то в отпуске, то ещё где-то. Спустя неделю та сторона наконец-то объяснила: чего это, я намёков не понимаю, что ли? Это ж такой отказ. К счастью, это не типичная ситуация.

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

Написание кода прямо на собеседовании. Тоже ни в какой из ролей не сталкивался, потому как и так изрядный стресс, куда тут ещё и код писать? Максимум — какие-то наброски из 3-5 строк на псевдокоде — либо для какой-то идеи, либо для шаблонов проектирования.

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

Передаю ещё один привет, меня, помню, спросили: «Есть три вложенных цикла. Какова вероятность, что тело будет выполнено чётное количество раз?» Ответил, хотя от волнения ошибся с арифметикой, но быстро исправился.

Алгоритмы. Некоторые западные фирмы, кстати, после всяких разговоров о технологиях и архитектуре дают пару алгоритмических заданий на Codility. С одной стороны, конечно, плох тот разработчик, что не может сортировку пузырьком написать, с другой — ну где она, а где, допустим, веб-программирование? С непривычки шокирует. Наверное, есть проекты, где обход графов нужно делать, но лично я последний раз с таким сталкивался в выпускном классе.

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


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

Похожие статьи:
Эта статья подготовлена на основе доклада Андрея Чередарчука и Александра Судакова на Root Linux Conference 2017 — ежегодной конференции embedded-...
Михайло Федоров залишиться міністром цифрової трансформації, але також буде віцепрем’єр-міністром із інновацій, розвитку освіти,...
[DOU Hobby — рубрика о нетехнических проектах IT-специалистов: творчество, интересное хобби и другие lifestyle-достижения. Если вам есть...
28 лютого у Києві відбулося нагородження переможців Першої премії DOU. Подія зібрала орієнтовно 300 представників ІТ-галузі. Після...
Зараз в українських ІТ-компаніях працюють орієнтовно 280-300 тисяч спеціалістів, кожен з яких створює п’ять додаткових робочих...
Яндекс.Метрика