×

Как в Wix строят процесс собеседований и что изменили с переходом в онлайн

C начала карантина Wix перешел на удаленку. Вряд ли кого-то сейчас этим удивишь, правда? Что может показаться удивительным, так это то, что мы не привыкли к такому формату взаимодействия. Мы всегда были очень ориентированы на офлайн-общение, но в очень короткие сроки смогли пересмотреть и адаптировать свои процессы. Один из таких процессов — поиск новых разработчиков. За месяц карантина мы успели провести 32 интервью. Я руковожу Front-еnd гильдией в Киеве, и построение процесса отбора — одна из моих прямых обязанностей. В этой статье я вам расскажу, как эффективно и безопасно его построить.

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

Wix — международная компания, известная как платформа для создания сайтов. На самом деле это платформа для полноценного управления бизнесом онлайн — начиная от AI для создания сайтов и заканчивая CRM, своей платежной системой, инструментами для написания кастомной логики и множеством специализированных приложений для разных видов бизнеса. Мы обслуживаем больше 180 миллионов пользователей, и во времена, когда малый бизнес по всему миру вынужден уходить онлайн, мы им нужнее чем когда-либо. А это значит, что нам нужно больше талантливых программистов.

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

Цели интервью и что оцениваем

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

  1. Дать пользу человеку. Он потратил свое время, и мы хотим дать ему качественный фидбек. В идеале кандидат должен узнать на собеседовании что-то новое.
  2. Рассказать о нас: кто мы, как работаем, какой продукт делаем, как подходим к разработке и так далее.
  3. Показать свою экспертизу. Мы хотим находиться в окружении крутых профессионалов, им обычно тоже важно, с кем работать.

Давайте обсудим то, что кажется очевидным. «Проверить технический уровень» — что это значит и как это оценить? Мой совет: разбить это на понятные, максимально изолированные составляющие, выделить, что для вас важно, и оценивать их отдельно.

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

  • ES/TS knowledge. Не надо объяснять весь ’JavaScript: WAT!’, но понимать особенности языка — нужно.
  • FED-specific knowledge. Браузерные API, HTML/CSS, оптимизации, сборщики, линтеры и тому подобное.
  • Passion for technology. Как человек «смотрит по сторонам», развивается, что изучал, а возможно, применял за пределами рабочей необходимости.
  • Deep understanding of his technology. Знает ли соискатель особенности функционала, с которым работает, лучшие практики, экосистему и прочее.
  • Algorithmic coding. Не обязательно знать 5 алгоритмов сортировки, но умение решать базовые задачи — обязательно.
  • Real life coding. Как человек пишет код, приближенный к реальной жизни.
  • Getting things done. Насколько важно добиться результата, выполнить все на максимум, довести дело до конца.
  • Fundamentals. Как работает веб в целом, понимание работы с сетью, авторизации, серверной части, оптимизаций и так далее.
  • System design and architecture. Умение спроектировать систему end-to-end, понимание преимуществ и недостатков разных решений, стратегий компенсаций этих недостатков.
  • Product orientation. Как кандидат думает о продукте, важны ли ему детали того, над чем он работает, и как это будет влиять на пользователей и бизнес.

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

Этапы

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

Техническое интервью

Оно длится полтора часа, и его всегда проводят два разработчика — для более объективной картины. Первое интервью — это первое впечатление. Вероятно, это самый важный этап. Тут мы знакомимся со специалистом, рассказываем о компании, инжиниринговой культуре, технологиях и продукте. Узнаем опыт человека, с чем он работал, что считает самым интересным. Разбираемся в технологиях, с которыми кандидат имел опыт, как он их понимает, что знает об их экосистеме, что и зачем применял на практике. Затем мы, как правило, даем пару базовых задачек, чтобы посмотреть знание JS, его особенности и частые паттерны. А также несколько «алгоритмических» задач, чтобы оценить ход мышления: как человек подходит к решению, как может обсудить преимущества и недостатки этого подхода, написать тесты и так далее.

Код-тест

Мы спокойно даем его домой, затем обсуждаем, что и из каких соображений было сделано. У нас есть разные варианты — от двухчасового теста до открытых задач, над которыми можно просидеть выходные. В последних человек может проявить всю свою фантазию. Но цель — проверить, как разработчик пишет код в ± реальной жизни, на что обращает внимание и как расставляет приоритеты. Это может быть как «проект с нуля», так и уже готовый код с тестами, который нужно поправить и добавить функционал. Какое из них давать — мы решаем по результатам интервью. Иногда предлагаем кандидату на выбор — более развернутое задание, где он может проявить фантазию и получить фидбек, или лаконичное и ограниченное во времени.

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

Дизайн-интервью

Это так же полтора часа с двумя разработчиками. Самый творческий этап, на нем мы вместе проектируем какую-то систему: любой продукт, например, ленту в Фейсбуке. У соискателя совершенно развязаны руки, он может выбирать подходы и технологии. Мы же хотим понять, как он мыслит системно. Тут нет правильных и неправильных решений. Все имеет свои преимущества и недостатки, важно, как их взвешивают. Мы смотрим, как человек подходит к проблеме, какие альтернативы предлагает, как оценивает их в контексте конкретного продукта, понимает ли минусы, может ли придумать, как их компенсировать. Как ведет диалог с «менеджерами». В общем, вполне жизненная ситуация: продакт пришел к разработчику с новой фичей.

Знакомство с проектом

Обычно проводит R&D-менеджер и тимлид проекта. Зачастую это занимает не больше получаса. Если мы дошли до этого этапа — отлично, значит, технически мы вполне готовы взять кандидата в Wix. И тут пора определиться с конкретным проектом. Мы понимаем пожелания человека, его сильные и слабые стороны, свои приоритеты. Исходя из этого, можем предложить команду. Нам очень важно, чтобы кандидат и команда подошли друг другу. Будущие менеджеры общаются со специалистом, рассказывают про проект и его особенности. Тут нет никаких критериев. Нам важно, чтобы менеджер сказал: «Да, я хочу этого человека к себе в команду». И кандидат сказал: «Я понимаю, что это за проект, какие у него цели и проблемы. А еще мне нравятся эти ребята, хочу к ним в команду».

HR-интервью

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

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

Построение процесса онлайн

Переходя на онлайн-собеседования, мы задали себе вопрос: изменилось ли что-то глобально? Нет, мы ищем все тех же людей, нам важно все то же. Цели остаются на месте. Но поменялась форма. Мы начали использовать другие инструменты, к ним нужно привыкнуть. Сам процесс сильно изменился, его нужно отточить и перестроить.

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

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

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

Соискателю должны заранее объяснить, как будет проходить интервью, чтобы не было сюрпризов. Это ему рассказывает HR, приглашая на встречу. Например: хотите видеосвязь — предупредите кандидата, чтобы он не оказался посреди кровати и в пижаме :). Хотите, чтобы человек показывал свой экран, — предупредите, чтобы он успел почистить вкладочки в браузере. В конце концов, расскажите, какой софт нужно установить: Zoom/BlueJeans/Skype... Да и самим интервьюерам не повредит лишний раз напомнить: держать фокус в онлайн-связи сложнее, надо подготовить место, надо быть постоянно активным и включенным.

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

Технически мы выбрали для себя BlueJeans для видеосвязи. Уверен, вы знаете аналоги) Для написания кода, решения задачек и прочее — CodePad. Крутой инструмент: тут и удобный collaborate-режим, и поддержки разных языков, и запись сессии. Очень рекомендую.

Сложнее с код-тестом, который мы предпочитали давать при личной встрече, чтобы подсказывать, сразу же проверять, давать обратную связь. Сейчас мы отправляем тест домой. Это значит, надо увеличить разнообразие заданий и убедиться в своевременной сдаче и проверке. На этот момент у нас есть 3-4 задания, они очень разные, но суть похожа. Надо сделать (или доработать) проект, в котором есть небольшая интерактивность, немного UI, парочка запросов к серверу. Мы хотим отвлечься от абстрактных алгоритмических задач и посмотреть на код, который предстоит писать в обычной жизни.

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

Краткий итог

Что из этого всего важно вынести:

  • Точно знайте, чего вы хотите достичь, стройте процесс, исходя из этих целей. Не делайте что-то только потому, что «все так делают».
  • Проанализируйте, как влияет смена формата. Какие появляются критические точки? Продумайте, как их решить, и донесите информацию тем, кто в этом задействован.
  • В целом подобные моменты — хороший повод пересмотреть свои процессы. Точно ли все они нужны и работают правильно.
  • Коммуникация — с ней всегда что-то идет не так. В онлайн-режиме это еще опаснее. Убедитесь, что вы предусмотрели этот риск. Что все стейкхолдеры понятны и все знают, что от них ожидают.

Оставайтесь здоровы. Ну и без паники, все будет хорошо.

Все про українське ІТ в телеграмі — підписуйтеся на канал DOU

👍ПодобаєтьсяСподобалось1
До обраногоВ обраному6
LinkedIn

Схожі статті




22 коментарі

Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.

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

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

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

мифы и их демифистикация в комментариях

Когда-то давно написал рекрутер из WIX я как раз собирался менять работу. Я согласился сделать тестовое задание, выделил на это пол дня, в выходной. Отправил, в итоге со мной даже не вышли на связь, чтоб сказать результат или дать хоть какой-то фидбек. Если компания так неуважительно относится к чужому времени то я думаю я ничего не потерял :)

А когда это было? Довольно странно, мы не даем первым этапом тестовые задания, чуть ниже я даже описывал, что мы так не делам поскольку уважаем время кандидата, и считаем некорректным начинать с «вот вам тестовое задание».

Проходил собес в WiX, дело дошло до интервью по телефону, которое 2 раза отменяли за пол часа до созвона, а на третий вообще отменили вакансию. Ладно б там я лично подавался, но нет же ж, рекрутер сам предложил вакансию :)

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

Согласен с автором. У викс сильны технический бренд и классные программисты там работают, но, увы, уже не один человек мне говорил, что с их рекрутерами — сложно. Есть и свой опыт:
Дважды подавался к вам. Первый раз откликнулся на доу и через ваш сайт — 2 недели тишина, написал знакомому, что у вас работает, он пинганул рекрутера лично, после этого процесс пошел. Второй раз я уже знал, что нужно писать рекрутеру напрямую, но от момента что я написла и скинул CV до назначения интервью снова прошло почти 2 недели. Причем это я сам напомнил «ну как там дела?». Мне кажется, здесь есть что улучшать :)

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

Итого куча народу строит процессы проведения этапов интервью, инвестирует время в общение с кандидатами, а потом кто-то забывает позвонить/отправить письмо, о том что человеку готовы сделать предложение о работе :) Может стоит задуматься над улучшением инструментов для этого самого человека?

Проблема не только в WiX, это повсеместное явление. Рекрутерше выплачивают бенефит в ее $300-$1000 за найм. А в Отпуск/iPhone очень хочется, поэтому ей некогда тратить свое время на «репутацию компании», зарабатывать нужно. Если кандидат не заходит — по любым причинам, ей нет финансового смысла тратить на него свое время дальше, даже просто фидбек писать. Это самое время можно потратить на следующего кандидата, закрыть пару тройку позиций и: мотнуть в Тайланд, купить машину и т.д. Это конечно не ко всем относится, HR в разных компаниях по разному построен. Я давно заметил что обенно активны рекрутеры: поздней весной, перед новым годом и 1-м сентября — т.е. в окурат когда денги нужны: в отпуск, ребенка в школу собрать и т.п. Это и не плохо и не хорошо, это рынок такой. Покуда владельцы бизнеса не мотивируют «создание доброй репутации», это будет их личной головной болью.

У меня с Wix был аналогичный опыт: пару лет назад делал тестовое, потратил на него часик, в ответ рекрутер написала «не так».
После этого случая избегаю рекрутеров оттуда.

+++. После общения в линкедине или скайпе отправил резюме и рекрутер пропал. Правда это было достаточно давно.

На фоне этого возник вопрос: поменяла ли компания свою позицию по поводу удаленной работы?

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

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

Отличная статья, спасибо, что делитесь опытом.

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

Это отличная идея. Действительно, на одного человека в результате приходится минимум 5 разработчиков по 2 часа. Мы такое делаем в нашей программе для джунов, там действительно первым этапом идет тестовое задание. И после него остается не больше 30% кандидатов. Но все равно мы даем им фидбеки по нему, объясняем как стоило его делать, как развиваться и тренироваться, чтоб проходить такие задания и тд.

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

Підписатись на коментарі