Кадровое агентство по подбору персонала

Два разработчика обсуждают интерфейс клиентского портала со списком заявок за рабочим столом в офисе.

Кейс «Датапрофи»: подбор команды разработки из пяти человек за 4 месяца

Клиент: Датапрофи — ИТ-сервисная компания из Электростали: 20 лет на рынке, больше 2000 клиентов, ИТ-аутсорсинг, 1С, CRM, серверы, кибербезопасность, сети и видеонаблюдение.

Услуга: подбор IT-специалистов

Срок сотрудничества: 4 месяца, разовый проект под запуск направления

Позиции: Python-программист, Backend-разработчик, Frontend-разработчик, тестировщик

Результат: за 4 месяца собрали команду разработки из 5 человек, а через полгода её работы первая версия клиентского портала открылась для клиентов на поддержке.

Разработка внутри сервиса

Датапрофи двадцать лет живёт по законам сервиса: заявка, ответ в среднем за 15 минут, выезд, закрытие. В штате инженеры, 1С-специалисты, сетевики. Своего программного продукта у компании не было: всё, что нужно клиентам, внедрялось и настраивалось на готовых системах. Но с ростом базы до двух тысяч клиентов стало понятно, что часть работы проще автоматизировать, чем делать руками. Клиентам нужен понятный портал с заявками и статусами, инженерам данные мониторинга серверов клиентов в одном месте, внедренцам 1С и CRM повторяемые интеграции вместо скриптов, которые каждый раз пишутся заново.

Руководство решило запустить внутри компании своё направление разработки и начать с клиентского портала (сервис-деск с личным кабинетом), автоматизации мониторинга и интеграций 1С с CRM и сайтами. Нужны были четыре роли: Backend-разработчик, Python-программист, Frontend-разработчик и тестировщик.

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

Центральная идея проекта: разработчиков в сервисную компанию нужно нанимать как отдельную продуктовую команду с защищёнными задачами, и кандидат должен видеть это с первой строки вакансии.

Как мы устроили работу

До начала поиска мы вместе с техническим директором Датапрофи зафиксировали три правила. Первое: команда разработки не берёт заявки первой линии, исключения только через техдиректора. Второе: стек выбран заранее (Python и FastAPI на бэкенде, PostgreSQL, Vue на фронте), чтобы не собирать людей под разные вкусы. Третье: у продукта есть внутренний заказчик и описанная первая версия, а не «будем думать вместе».

Затем развели роли. Backend-разработчик отвечает за ядро портала: модель заявок, SLA-таймеры, роли и права клиентов, API для фронта. Python-программист работает на периферии: агенты и сборщики мониторинга, интеграции с 1С через HTTP-сервисы, обмены с Битрикс24 и amoCRM. Frontend-разработчик делает личный кабинет клиента, тестировщик проверяет и портал, и интеграции.

Формат: офис в Электростали плюс гибрид. Фронтендер и тестировщик 2 дня в неделю в офисе, потому что им нужно общаться с инженерами поддержки, будущими пользователями портала. Бэкенд и Python могут работать удалённо, с приездом раз в две недели на планирование. Офисные роли искали по Электростали, Ногинску, Балашихе, Щёлкову и Орехово-Зуеву, удалённые по всей России.

Сложности и решения

1. Слово «аутсорсинг» в вакансии. Первая версия вакансии, написанная внутри компании, начиналась с истории Датапрофи как ИТ-аутсорсера. Откликались системные администраторы, а разработчики пролистывали. Мы переписали текст от продукта: «строим клиентский портал для 2000 компаний, которые уже на поддержке», с описанием первой версии и прямой фразой, что разработка не дежурит на заявках. Доля целевых откликов выросла с четверти до двух третей.

2. Два питониста, которые не должны быть одинаковыми. Backend-разработчик и Python-программист пишут на одном языке, и первые кандидаты подходили на обе вакансии сразу. Мы сделали разные скрининги. Бэкендеру задавали вопросы про проектирование: как хранить историю статусов заявки, как считать SLA с учётом рабочих часов конкретного клиента. Python-программисту про интеграции: что будет, если выгрузка документа из 1С придёт дважды, и как сделать обмен идемпотентным. Пересечение кандидатов между вакансиями почти исчезло, и каждый финалист был сильнее именно в своей зоне.

3. Python без 1С и 1С без Python. Хорошие питонисты почти никогда не знают 1С, а программисты 1С редко пишут на Python. Ждать человека, который совмещает оба, можно было месяцами. Мы предложили опереться на то, что у компании уже есть: свои 1С-специалисты делают сторону 1С (HTTP-сервисы, OData), а Python-программист отвечает за обмен и его логику. Искали людей с опытом интеграций любых учётных систем и маркетплейсов, а знание 1С сделали плюсом, а не требованием.

4. Мониторинг на чужих серверах. Сборщики мониторинга ставятся на серверы клиентов, и ошибка в агенте может нагрузить или положить чужую инфраструктуру. От Python-программиста здесь нужна аккуратность системного администратора. В финал брали тех, кто без подсказки спрашивал про права агента, потребление ресурсов и обновления. Одного сильного по коду кандидата клиент сам отклонил после вопроса о том, как откатить неудачную версию агента сразу на 300 серверах.

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

6. Тестировщик на стыке портала и учёта. Проверять нужно не только интерфейс, но и цепочки: заявка, статус, уведомление, выгрузка в 1С и CRM. Поэтому при подборе тестировщика искали кандидатов с опытом API-тестирования и работы с учётными системами. На скрининге просили составить тест-кейсы для ситуации, когда один и тот же документ изменили одновременно в 1С и в CRM.

Управляющий партнёр A2

Час с HR-директором бесплатно

Продуктивный разговор о найме с HR-директором A2. Только для компаний от 20 сотрудников

Аналитика по воронке

Сводная воронка по позициям, за весь проект

Позиция Кандидатов Скрининг Техническое интервью Финал Оффер Вышли
Backend-разработчик 134 29 12 4 2 1
Python-программист 176 41 16 6 3 2
Frontend-разработчик 152 33 13 5 2 1
Тестировщик 189 40 14 5 1 1
Итого 651 143 55 20 8 5

Python-программист, конверсии по этапам

Этап Количество Конверсия
Отклики и активный поиск 176 —
Прошли скрининг (вкл. вопрос про повторную выгрузку) 41 23,3%
Техническое интервью 16 39,0%
Финал с техническим директором 6 37,5%
Оффер 3 50,0%
Вышли на работу 2 66,7%

Целевые отклики до и после смены текста вакансий

Период Всего откликов Из них разработчики и тестировщики Доля
Первые 2 недели 212 54 25,5%
Следующие 2 недели 186 124 66,7%

Источники кандидатов

Позиция Основные каналы
Backend-разработчик и Python-программист hh.ru (~45%), прямой поиск (~30%), Хабр Карьера (~25%)
Frontend-разработчик hh.ru (~55%), telegram-чаты (~25%), Хабр Карьера (~20%)
Тестировщик hh.ru (~65%), telegram-чаты тестировщиков (~20%), рекомендации (~15%)

Смена текста вакансии дала больше, чем любой новый канал: за две недели доля целевых откликов выросла с 25,5% до 66,7% при почти том же общем потоке. Дальше самый жёсткий фильтр стоял у Backend-разработчика: до финала дошли 4 человека из 134, потому что вопросы про модель данных и SLA быстро отделяли тех, кто проектировал системы, от тех, кто писал эндпоинты по готовому ТЗ. По Python-программисту воронка шире, и мы закрыли двух человек: второй занялся мониторингом, когда стало ясно, что агенты и интеграции одному не потянуть. У тестировщика из пяти финалистов оффер получил один, клиент сознательно ждал кандидата с опытом проверки обменов с учётными системами.

Что в итоге

За 4 месяца Датапрофи получила команду разработки из пяти человек: Backend-разработчика, двух Python-программистов, Frontend-разработчика и тестировщика. Правило «разработка не берёт заявки» компания удержала, и через полгода работы команды первая версия клиентского портала открылась для клиентов на поддержке: заявки, статусы, история обращений и базовые данные мониторинга. Интеграции 1С с CRM, которые раньше каждый раз писались заново, начали собираться из общих модулей.

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

И второе. Не надо искать единорога, который знает и Python, и 1С, и мониторинг. Гораздо быстрее разделить работу между новыми людьми и теми, кто уже есть в компании, и нанимать под свою часть задачи.

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

Новые кейсы
HR-специалисты обсуждают кандидатов на планшете

HR отдел
на аутсорсе

Десятки кандидатов по 5-ти должностям одновременно без ограничений

Наши исследования

Исследование:Изменения рынка труда менеджеров по продажам(Россия, Москва и область, 2020–2025)
Как рассчитать KPI для сотрудников: формулы, примеры расчета, методы измерения и оценки показателей
Ниже представлен структурированный список основных HR-метрик, которые рекомендуется отслеживать HR-м
Логотип кадрового агентства А2

Получить консультацию

Услуги

Обучение

Не нашли нужную услугу?

Свяжитесь с нами – подберем решение под ваши задачи

+7 950 908 84 24

Скидка 50% 
на первый месяц

Оставьте заявку – обсудим вашу задачу, подготовим предложение и применим скидку 50% на первый месяц.

Быстрый старт
в течение 1-3 дней
Эксперты

в найме digital и IT

Прозрачный

и понятный процесс