Как «Флант» нанимает сотрудников

«Флант» — это технологическая компания. Сейчас у нас порядка 60 человек и 7 команд. Что примечательно, практически все в той или иной мере инженеры — включая менеджеров, которые нет-нет, да и напишут строчку-другую кода.

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

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

dhgzebsoyaast4w282ji6jnq8jo.jpeg

Поиски и знакомство


Найм в айти-компаниях — больная тема: на что только ни идут команды, чтобы заполучить нового бойца. Мы пока что не нашли серебряной пули, которая помогала бы нанимать сразу и много инженеров, которые разделяют наши ценности: мы любим Open Source, тщательно выбираем, с кем работать, а затем выкладываемся по полной, чтобы решать настоящие (а не выдуманные!) проблемы.

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

Все собеседования и прочие коммуникации (включая даже продажи) в нашей компании идут через Slack (больше для текста) и Google Meet (видео) — они показали себя лучше всего. До этого мы продолжительное время поддерживали self-hosted-инсталляцию BigBlueButton, а также продолжаем работать и со своей IP-телефонией, которая актуальна на случай аврала и оставшихся потребностей в общении по телефону. Для последнего достаточно зайти во внутренний справочник сотрудников, нажать кнопочку — и сервис наберет по телефону вас и адресата для разговора.

kgoesb0kc0oy4cma1hlvbbsib6a.jpeg

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

  • График? Относительно свободный, если тебе надо пойти прогуляться — напиши в Slack-канал, убедись, что нет назначенных встреч и обещаний клиенту… и пожалуйста. Мы стараемся быть на связи с 11:00 до 19:00 по Москве, но в век победивших телекоммуникаций всё это решаемая задача.
  • Дресс-код? Просто соблюдайте рамки приличия. По-моему, это прекрасный опыт — ходить на работу в тапочках и шортах. Конечно, нам всё равно хочется видеть людей вживую и общаться очно. Поэтому минимум раз в год мы собираемся на корпоративе, с семьями. Разумеется, проезд (как и все командировки) оплачиваются компанией. А живущие в относительной близости от офисов (в Москве и Нижнем Новгороде) могут заглянуть в последнюю пятницу месяца, чтобы поесть пиццы, выпить чего-нибудь вкусного, поиграть в PS или просто похоливарить о технологиях.
  • К слову о холиварах: мы против авторитарности. Если вы говорите за дело, то можете хоть матом доносить свою мысль до технического директора. К чёрту формальности — сперва дело и правильные решения!


Найм: 0 этап — отбор


Как я успел сказать в самом начале, секрет поиска сотрудников видится нам в кропотливой и систематической работе по отбору резюме, размещенных в открытом доступе. Например, в том же Телеграме уже существует около 50 рекрутерских чатов, где можно искать кандидатов (самые полезные для нас — Devops_jobs, Telegram Job и Работа в IT). Кроме того, отлично зарекомендовал себя и всем хорошо знакомый hh… с одной особенностью: мы не ждем, пока кандидат откликнется сам на размещенную у нас вакансию, а отбираем резюме из базы, захватив таким образом даже тех, кто не находится в активном поиске работы, но готов рассмотреть интересные предложения.

В качестве примера приведём занимательную статистику о том, как совсем недавно за полтора месяца компания выросла на 7 DevOps-инженеров:

  • Мы отобрали около 150 резюме, подходящих нам по профилю, и провели 78 первичных интервью (далее я подробно расскажу, что включает в себя каждый из этапов найма).
  • По результатам интервью пригласили 32 кандидатов на второй этап — техническое задание. Успешно справившихся с ним ожидало финальное испытание — общение с тимлидами.
  • На этом этапе мы общались с 11 кандидатами и приняли положительное решение по 7 из них.


Найм: 1 этап — собеседование-знакомство


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

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

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

Интервью занимает около 30–40 минут, и мы понимаем, смотрим ли в одном направлении с кандидатом и на что обратить внимание при дальнейшем общении.

Найм: 2 этап — техническое задание


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

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

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

1-uuz4_qanqklg-9zqt-tzjbs3o.png
Типичная ситуация в тестовой виртуалке для кандидатов, успешно загрузивших систему

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

  • Мотивирован ли этот человек на работу у нас?
  • Командный ли это игрок и предрасположен ли он к частой коммуникации?
  • Способен ли самостоятельно решать задачи?
  • Следует ли конкретным инструкциям?
  • Изобретателен ли в поиске технических решений?


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

Задание у нас по-настоящему длинное — в среднем на него тратят около 9 часов (включая всевозможные обеды и прочие перерывы, если кандидат их по своему желанию делает). Несмотря на это, более 80% прошедших тестирование позитивно высказываются об этом тесте и благодарят за него по своей воле (т.е. ещё до того, как мы запрашиваем обратную связь). Однако мы понимаем, что это слишком много — поэтому (и из-за нескольких других причин) в настоящее время готовим значительно обновлённую версию задания, которая будет не только короче, но и не менее увлекательной и, надеемся, эффективной.

Найм: 3 этап — финальное собеседование


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

Тимлид должен уметь задать технические вопросы, понять, в какой парадигме управления проектами жил кандидат, суметь рассказать о работе в компании и объяснить, каково будет житься в его команде. Ведь если кандидат пройдёт — тимлиду нужно понимать, как «встроить» человека в свою команду, на что обратить внимание в первую очередь. В среднем на такое собеседование уходит около часа.

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

Заключение


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

© Habrahabr.ru