На прошлой неделе наши коллеги — Евгений Шишкин, менеджер разработки, и Лидия Самкова, руководитель отдела по работе с IT–персоналом, выступали на HR API. Делимся конспектом их доклада о процессах подбора и адаптации разработчиков в Контуре.
За последние три года разработчиков в Контуре стало в два раза больше. К концу 2018 года их число перевалит за 1000. У компании появляются новые продукты, а значит, растет и количество команд — сейчас их больше 50. На фоне активного роста наши процессы подбора и адаптации перестали работать.
Мы не первая крупная IT-компания, которая столкнулась с такой проблемой масштабирования. Поэтому мы изучили чужой опыт, заточили его под наши реалии и готовы поделиться им.
Кадр из фильма «Гарри Поттер и философский камень»
Как было раньше?
Процесс подбора и приема строился вокруг рейтинга команд, который пытался учесть потребности бизнеса и команд. Сначала кандидата приглашали на собеседование с командами с наивысшим приоритетом в этом рейтинге.
На собеседовании, которое длилось 1,5–2 часа, пытались выяснить, насколько кандидат соответствует техническим требованиям и ожиданиям по софт-скилам. Если кандидат не подходил, планировалось еще одно такое же собеседование со следующими командами в рейтинге. И так по кругу, пока мы не находили подходящую команду.
После этого проходило командное собеседование–знакомство и финальное собеседование с руководителем управления. Адаптацию новичок проходил в команде, куда его приняли.
Проблемы такого подбора
- Cерьезный дискомфорт для кандидатов, которым нередко приходилось пройти через 5–8 собеседований. В одном собеседовании участвовало от 6 до 10 человек.
- Процесс подбора затягивался на месяцы, мы теряли интересных людей.
- Составление рейтинга команд было непрозрачным. Команды не могли повлиять на место в рейтинге, некоторые ждали кандидатов годами.
Для кандидатов такая схема тоже выглядела уныло. Получается, у нас было несколько десятков команд с открытыми вакансиями, но выбора у кандидата не было. Новичок составлял представление обо всей компании на основе опыта работы в одной команде, которую мы ему предложили. И если ожидания и реальность не совпадали, то мотивация падала, и он мог уйти (35% всех уходов приходилось на тех, кто не проработал и года).
У старой схемы не было единого подхода к адаптации. Каждая команда тратила время на обучение новичка общеконтуровским практикам, инструментам и решениям. Адаптация везде проходила по-своему, а где-то ее не было вовсе. Это тоже причина серьезных потерь.
Что мы изменили?
Мы считаем, что людей нужно принимать не в какую-то конкретную команду, а в компанию. Поэтому выстроили централизованную систему собеседований, создав для этого специальное сообщество — гильдию собеседующих, и отменили рейтинги.
Гильдия проводит технические собеседования, где кандидат проходит 3 обязательных секции: показывает свои практические навыки в написании кода, знание алгоритмов и структур данных, паттернов проектирования. Еще есть дополнительная секция для опытных разработчиков, где мы проверяем технологический кругозор кандидата.
Если с технической стороны все хорошо, проводим финальное собеседование, и в случае взаимной симпатии и успешных договоренностей принимаем человека на работу. А дальше новичок попадает на 3 месяца в буткамп, где происходят:
- адаптация,
- общее погружение в контекст компании и процессов разработки,
- обучение в рамках крэш-курса,
- стажировка в нескольких командах.
И только после этого уже сформировавшийся контуровец выбирает команду, где он хочет работать.
Выбор команды стал осознанным предпочтением кандидата. При этом мы даем возможность командам влиять на процесс выбора: рассказать о себе, проекте, задачах, процессах и технологиях.
Буткамп
В качестве прообраза взяли решение с одноименным названием «буткамп» от Фэйсбука.
Сейчас структура буткампа выглядит так:
- Общее погружение и знакомство с компанией (1–3 день),
- Обучение: креш–курс и знакомство с командами (4–10 день),
- Стажировки и выбор команды (3–12 неделя).
Первые три дня буткампа обязательны для всех, они здорово помогают сформировать общий контекст. Дальше есть некоторая гибкость, кто-то проходит через обучение на крэш–курсе и через стажировки, а кто-то попадает сразу в команды.
Одна из самых важных частей первых дней — это рассказ, на что следует обращать внимание при выборе команды, и об инструментах, которые помогают сориентироваться в нашем многообразии команд. Основной инструмент — классификатор команд.
Буткамперы видят все команды, в которых есть открытые вакансии. Могут фильтровать список команд по технологиям, платформам, городам и востребованным ролям.
Креш–курс
Креш–курс позволяет на выходе выровнять общий технический уровень сотрудников, выработать у них представление о том, как принято в компании писать код, какие практики и технологии мы используем.
Буткамперы знакомятся с нашей инфраструктурой. Новички на самом старте получают прививку, мотивирующую их в дальнейшем использовать лучшие практики и общие инфраструктурные решения.
Курс разбит на блоки — очные занятия с лекциями, практикой и домашними заданиями. Пока курс рассчитан преимущественно на бэкенд разработчиков. Некоторые блоки адаптированы и под фронтендеров, скоро для них появится еще три блока.
На крэш–курс мы приглашаем не только буткамперов, но и всех желающих из команд разработки. Занятия обычно проходят в парах, и это возможность поработать вместе новичкам и опытным сотрудникам. Для буткамперов это еще и дополнительная возможность поговорить о разных командах и получить «нефильтрованную» информацию.
Знакомство с командами
После первых трех дней буткамперы составляют шорт–лист интересующих их команд, где описывают причины своего выбора. Уточнить информацию о команде можно у менторов — сотрудников с широким контекстом по проектам и командам. Менторы следят, чтобы выбор новичка не расходился с его мотивацией.
Теперь пришло время знакомиться с командами :) Буткамперы самостоятельно назначают встречи, выясняют все важные для себя моменты, и с понравившимися командами договариваются о стажировках.
Шорт-листами с мотивацией мы делимся со всеми командами, у которых открыты вакансии. Команды получают доступ к информации, включая артефакты с собеседований. Отталкиваясь от этой информации, команды могут выходить на связь с ребятами и договариваться о встречах и стажировках.
К концу второй недели все определяются как минимум с первой стажировкой и выходят на нее. И это уже третий, самый продолжительный, блок в буткампе.
Стажировки
В среднем одна стажировка длится 3–4 недели, мы рекомендуем пройти 2–3 таких стажировки. Команды у нас действительно очень разные и по процессам, и по атмосфере, и по предметной области. Далеко не всегда возможно с первого раза попасть в цель, поэтому несколько стажировок — это важно.
После стажировок ребята выбирают команду, где они хотели бы продолжить работу на постоянной основе. Естественно, при этом учитывается и желание самих команд продолжить такое сотрудничество.
Мы фиксируем, сколько раз команда попадала в шорт-листы буткамперов, сколько стажировок прошло и сколько из них закончилось выбором в их сторону. Этой статистикой мы делимся с командами. Она помогает бороться со страхом конкуренции за стажеров с топовыми командами. Есть популярные проекты, но финальное распределение буткамперов происходит равномерно.
Что получили в итоге?
Начиная с августа 2017 года у нас прошло 10 наборов буткампа, в конце мая стартовал 11 набор.
Буткамп помог:
- Расширить воронку подбора на входе. Теперь нам не нужно оценивать все риски по кандидатам на старте.
- Получить опытных и сильных кандидатов. Профи идут к нам охотнее, ведь на самом старте мы даем им возможность сделать осознанный выбор проекта и команды.
- Активнее вовлекать в формат распределенной разработки. Теперь можно просто взять и поработать со стажером удаленно.
- Организовать централизованную, качественную адаптацию новичков.
- Получить гармоничные пары сотрудник–команда. Сотрудник выбирает команду с теми задачами, которые будут его максимально развивать, а команда получает разработчика, замотивированного на решение задач именно этой команды.
- Получить людей компании, а не сотрудников отдельной команды. Это также очень хорошо сказывается на вовлеченности сотрудников и повышение внутренней кадровой мобильности.
Кстати, через буткамп проходят не только программисты. Сейчас он полноценно работает и для тестировщиков, мы постепенно подключаем к этому процессу аналитиков, на очереди у нас проектировщики и дизайнеры.
Как проходит подбор и адаптация разработчиков в ваших компаниях? Могли бы буткампы помочь и вам? Поделитесь в комментариях своим опытом собеседований в разных компаниях.