Хакнули систему: как мы изменили подбор и адаптацию разработчиков

На прошлой неделе наши коллеги — Евгений Шишкин, менеджер разработки, и Лидия Самкова, руководитель отдела по работе с IT–персоналом, выступали на HR API. Делимся конспектом их доклада о процессах подбора и адаптации разработчиков в Контуре.

За последние три года разработчиков в Контуре стало в два раза больше. К концу 2018 года их число перевалит за 1000. У компании появляются новые продукты, а значит,  растет и количество команд — сейчас их больше 50. На фоне активного роста наши процессы подбора и адаптации перестали работать.

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


md-tmbuien3acsydfy4pmtywd0u.png

Кадр из фильма «Гарри Поттер и философский камень»

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

На собеседовании, которое длилось 1,5–2 часа, пытались выяснить, насколько кандидат соответствует техническим требованиям и ожиданиям по софт-скилам. Если кандидат не подходил, планировалось еще одно такое же собеседование со следующими командами в рейтинге. И так по кругу, пока мы не находили подходящую команду.

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

Проблемы такого подбора


  • Cерьезный дискомфорт для кандидатов, которым нередко приходилось пройти через 5–8 собеседований. В одном собеседовании участвовало от 6 до 10 человек.
  • Процесс подбора затягивался на месяцы, мы теряли интересных людей.
  • Составление рейтинг команд было непрозрачным. Команды не могли повлиять на место в рейтинге, некоторые ждали кандидатов годами.

Для кандидатов такая схема тоже выглядела уныло. Получается, у нас было несколько десятков команд с открытыми вакансиями, но выбора у кандидата не было. Новичок составлял представление обо всей компании на основе опыта работы в одной команде, которую мы ему предложили. И если ожидания и реальность не совпадали, то мотивация падала, и он мог уйти (35% всех уходов приходилось на тех, кто не проработал и года).
 
У старой схемы не было единого подхода к адаптации. Каждая команда тратила время на обучение новичка общеконтуровским практикам, инструментам и решениям. Адаптация везде проходила по-своему, а где-то ее не было вовсе. Это тоже причина серьезных потерь.

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

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

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


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

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

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

В качестве прообраза взяли решение с одноименным названием «буткамп» от Фэйсбука.


1agedhthlvu6ckuzmm1odnoyl-y.png

Сейчас структура буткампа выглядит так:


  • Общее погружение и знакомство с компанией (1–3 день),
  • Обучение: креш–курс и знакомство с командами (4–10 день),
  • Стажировки и выбор команды (3–12 неделя).

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

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

gv3j46ostpp9vahtytrmyc45boe.png9vk92qpaky4x9t6b2kp6uetrtwq.png
Буткамперы видят все команды, в которых есть открытые вакансии. Могут фильтровать список команд по технологиям, платформам, городам и востребованным ролям.

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

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

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

На крэш–курс мы приглашаем не только буткамперов, но и всех желающих из команд разработки. Занятия обычно проходят в парах, и это возможность поработать вместе новичкам и опытным сотрудникам. Для буткамперов это еще и дополнительная возможность поговорить о разных командах и получить «нефильтрованную» информацию.

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

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

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

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

В среднем одна стажировка длится 3–4 недели, мы рекомендуем пройти 2–3 таких стажировки. Команды у нас действительно очень разные и по процессам, и по атмосфере, и по предметной области. Далеко не всегда возможно с первого раза попасть в цель, поэтому несколько стажировок — это важно.

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

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

Начиная с августа 2017 года у нас прошло 10 наборов буткампа, в конце мая стартовал 11 набор.

Буткамп помог:


  • Расширить воронку подбора на входе. Теперь нам не нужно оценивать все риски по кандидатам на старте.
  • Получить опытных и сильных кандидатов. Профи идут к нам охотнее, ведь на самом старте мы даем им возможность сделать осознанный выбор проекта и команды.
  • Активнее вовлекать в формат распределенной разработки. Теперь можно просто взять и поработать со стажером удаленно.
  • Организовать централизованную, качественную адаптацию новичков.
  • Получить гармоничные пары сотрудник–команда. Сотрудник выбирает команду с теми задачами, которые будут его максимально развивать, а команда получает разработчика, замотивированного на решение задач именно этой команды.
  • Получить людей компании, а не сотрудников отдельной команды. Это также очень хорошо сказывается на вовлеченности сотрудников и повышение внутренней кадровой мобильности.

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

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

© Habrahabr.ru