VK Cloud

Как нанять команду разработчиков на аутсорс

13 сентября 2019 г.
_blog_head_26.png

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

Почему появился рынок аутсорсинга разработки

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

В свежей статистике HeadHunter я обнаружил занятные цифры. По запросу «веб-разработчик» 2 000 вакансий и 70 000 резюме по всей России. По этим цифрам кажется, что для работодателя все хорошо: вакансий мало, сотрудников много. Скорее всего, работодатели сидят с большой кубинской сигарой, а сотрудники ломятся на работу за небольшие деньги.

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

Способы борьбы с дефицитом кадров: центры обучения и вузы

Онлайн-центры — Skillbox, «Нетология» и тому подобные. На сегодняшний день этот рынок в России развивается и помогает решать ситуацию с кадрами. Выпускники онлайн-школ — это уверенные джуны, но без практического опыта, им надо еще минимум 6-12 месяцев прокачивать знания до уровня «мидл», работая с реальными проектами.

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

Самостоятельно обучать специалистов всегда долго и дорого. Например, у нас есть свой центр обучения, аккредитованный «1С-Битрикс», мы вправе обучать разработке на CMS компании и выдавать сертификаты. Учеба в нашем центре длится четыре месяца, после нее мы получаем специалиста уровня «джуниор». Чтобы получить из него мидла, нужно еще 6-8 месяцев обучения.

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

Сложности найма инхаус-команды для разработки

Есть несколько сложностей, в основном они касаются малого и среднего бизнеса.

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

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

Нельзя собрать команду под короткий проект. На проект, длящийся 4-12 месяцев, хорошие специалисты не пойдут, они заинтересованы в стабильной работе. Если, конечно, вы не стартап, и не платите зарплату в четыре раза выше рынка.

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

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

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

Когда нужен аутсорс разработки

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

Второе – когда не хватает экспертизы внутри компании. Тут целесообразно прибегнуть к аутсорсу, чтобы не экспериментировать, не набивать шишки на своих ошибках. Например, запускаете новый проект, а он на другом стеке технологий. Либо ваш проект так вырос, что стал highload, высоконагруженным, нужно перерабатывать сайт, а ваши программисты не работали с такими масштабными задачами.

Третье – когда веб-разработка в вашей компании непрофильная услуга. В основном это относится к малому бизнесу. Например, компания занимается дизайном, продвижением, рекламой сайтов. Тут проще отдать разработку на аутсорс, чем нанимать программистов в штат.

Направления работы, которые чаще всего отдают на аутсорс в России: разработка и поддержка, дизайн и поддержка, тестирование.

Три формата работы на рынке аутсорсинга разработки

Fixed — когда у задач фиксированная стоимость. Вы отдаете задачу на аутсорс, аутсорсеры рассчитывают ее цену до начала работы. Плюс в том, что стоимость сразу известна, не может меняться. Как правило, если аутсорсер не так посчитал, что-то не учел, это его проблемы.

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

Минус fixed-подхода — в стоимость заложены риски, поэтому она обычно на 10–30% выше, чем при почасовой оплате. Также перед стартом работы тратится время на оценку: задачу разделяют на подзадачи, ответственные специалисты считают, сколько займет ее реализация, какая нужна экспертиза, потом менеджеры оценивают стоимость. Если вы отправляете задачи аутсорсерам стеком по 20-30 штук, временные потери могут быть большими.

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

T&M (time and material) — оплата за фактически потраченное время. Здесь для клиента все прозрачно и понятно. Минус в том, что аутсорсер может дать только приблизительную оценку стоимости работы. По факту на задачу может уйти меньше или больше времени, чем предполагалось на старте, соответственно, стоимость меняется в большую или меньшую сторону.

Преимущество T&M — стоимость аутсорса дешевле по сравнению с fixed. Но может быть такое, что менеджеру лень составить ТЗ разработчику, он объясняет ему задачу словами, в итоге время специалиста тратится не на разработку, а на разговоры с менеджером.

Outstaff — полный выкуп специалистов. Программист определенного уровня (джуниор, мидл, сеньор) от компании-аутстаффера начинает работать как штатная единица заказчика. Если купленный сотрудник заболел или уволился, компания обязана найти ему замену, как правило, в очень короткие сроки — 1-5 дней, чтобы избежать простоев в работе.

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

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

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

Как мы интегрируем команды разработки в бизнес клиента

Такой подход актуален для крупного бизнеса, когда нужно собрать команду и интегрировать ее в бизнес-процессы компании. Мы делаем это поэтапно:
  1. Собираем команду в зависимости от проекта клиента.
  2. Делаем карту интеграции команды — план по внедрению специалистов в бизнес-процессы клиента.
  3. Определяем KPI и дедлайны для команды. Не всегда важны только дедлайны, нужно считать эффективность команды и делать это правильно.
  4. Определяемся с коммуникациями — есть разные CRM-системы и task-менеджеры, важно, чтобы наша интегрированная команда работала так же, как все сотрудники клиента.

Чек-лист: как выбрать компанию для аутсорса разработки

  1. Четкое позиционирование. Не бывает аутсорсинговых компаний, которые делают полный цикл работ, к примеру, создание сайта с нуля. Аутсорсеры — это эксперты в одном направлении, максимум в двух смежных, например: mobile-разработка и web-разработка. Никогда хорошие аутсорсеры не делают дизайн, разработку и еще 10 разных услуг одновременно.
  2. Наличие грейдов и их описание. Если аутсорсер продает джуниоров, мидлов и сеньоров, должны быть четкие описания грейдов, чтобы было понятно: что это за специалист, что он умеет.
  3. Согласие на собеседование. Даже если вы не планируете собеседовать каждого разработчика, спросите у представителя компании, готовы ли они к собеседованию. Как правило, в адекватных аутсорсинговых компаниях к собеседованиям относятся положительно.
  4. Обезличенные резюме + карта компетенций. Обезличенные резюме — это обычные резюме сотрудников, только без контактных данных. Карта компетенций — описание компетенций специалиста, чтобы можно было подобрать разработчика с нужной степенью экспертизы. На запрос клиента компания должна предоставить несколько обезличенных резюме свободных сотрудников с описанием их компетенций.
  5. Кейсы. С кейсами может быть такая проблема, что у аутсорсера проекты для других компаний находятся под NDA, подробности нельзя разглашать. Поэтому кейсы могут быть обезличенными, без указания конкретных заказчиков.

Статья подготовлена на основе выступления Андрея Морозова на бизнес-завтраке VK Cloud (бывш. MCS) x FIRECODE «Масштабирование разработки за счет аутсорса». Все выступления с бизнес-завтрака можно посмотреть на YouTube-канале MailRu Cloud Solutions.

Узнавайте о выходе новых статей в блоге первыми!

Будем держать в курсе новостей и облачных трендов

section-subscribe_2x.png
    section-subscribe_2x.png
    Теги: K8s& DevOps, Cloud Native, Технологии, безопасность, персональные данные, Тренды, Разработка, kubernetes, базы данных, mysql, ci/cd, devops, etcd, disaster recovery, Бизнес, Без рубрики, Cloud Storage, облачные сервисы, объектное хранилище, Новости, промышленность, cloud-native, ФЗ-152, облака, облачная инфраструктура, IaSS, IT-системы, PaSS, AI, ИИ, кибербезопасность, облако, облачные технологии, antiddos, cloud networks, ddos, облачные вычисления, виртуальные машины, облачные серверы, IaaS, IDC, DBaaS, миграция, облачные платформы, бизнес, данные, карьера, объектные хранилища, платформенный подход, публичные облака, интернет вещей, предиктивная аналитика, IIoT, IoT, энергетика, big data, Ликбез, анализ данных, банки, большие данные, машинное обучение, machine learning, ритейл, страхование, контейнеры, логирование, микросервисная архитектура, наблюдаемость, ELK, autoscaling, автомасштабирование, linux, системное администрирование, хранение данных, хранилище данных, docker, контейнеризация, микросервисы, открытый исходный код, gitlab, MongoDB, postgresql, , виртуализация, виртуальное рабочее место, датчики, логистика, мониторинг оборудования, монолит, облачная модель, ИТ-инфраструктура, Tarantool, DevOps-инженер, Карьера, разработка, вебинар, дайджест, интернет-магазин, grafana, Helm, обалчные вычисления, кадры, найм, HR, Low-Code, AR/VR, Deloitte, инфраструктура, облачные ресурсы, Ant Design, программирование, javascript, фрондент, промышленный интернет вещей, API, HTTP-запрос, HTTP-протокол, сервер, бэкапы, облачные хранилища, хранение бэкапов, S3, мониторинг, протоколы передачи данных, производство, CNCF, Docker Hub, Github, системы оркестрации, Open Source-технологии, prometheus, CDN, хранение данные, apache kafka, бэкенд-архитектура, очереди сообщений, message queue, серверные сообщения, RabbitMQ, Apache Kafkа, распределенная архитектура, cloud-native-приложения, системный администратор, ТСО, ЦОД, go, golang, Java, Node.js, PHP, D2iQ, файловая система, event-driven приложения, IT-инфраструктура, беспилотники, виртуальные офисы, геймификация, доставка, дроны, интернет-магазины, роботы, Docker Swarm, IaC, PaaS, СХД, KaaS, контейнерезация, сеть доставки контента, СУБД, OpenShift, Prometeus, алгоритмы, биометрия, прогнозирование спроса, ML, Облачные сервисы, Хранилища данных, ГЛОНАСС, беспилотные автомобили, искусственный интеллект, Data Engineering, data science, Машинное обучение, Системное администрирование, kubeflow, нейросети, диски, HDD, Системное администрирование Kubernetes, Разработчики, наем, фреймворки, openstack, Cloud Queues, виртуальный хостинг, Облачные вычисления, протоколы, HTTP, anti-DdoS, межсетевой экран, сети, облачный сервис, B2B, облачная платформа, No-Code, IT-продукты, отказоустойчивость, AirFlow, база данных, облачное хранилище, озеро данных, системы хранения, оркестрация, cloud native, обработка данных, hadoop, hive, jupyterhub, mlops, presto, spark, архитектура, частное облако, private cloud, Apache Spark, облачные технологи, оркестраторы, ArenadataDB, автоматизация, CPU, облачные вычислени, GPU, Ашан, публичное облако, Arenadata DB, High IOPS SSD, Low Latency NVMe, DRS, окрестрация, продакшн, MLflow, Кибербезопасность, защита данных, DCIaaS, Облачные решения, Облачные технологии, M2M, Modbus, грузоперевозки, 152-ФЗ, Bigdata, Data Engineer, data scientist, Cloud Voice, распознование речи, синтез речи, Хостинг, провайдер, сетевая инфраструктура, Cloud IoT Platform облачоблачные сервисыные технологии, SaaS, Arendata, Миграция, Migration, Краудсорсинг, краудтестинг, Изображение, Metaflow, open source, Cloud Alerting, Cloud Monitoring, Managed Databases, инструменты аналитики, VK Cloud, MVP, стартапы, Cloud Servers, GraphQL, защита, цифровизация, Gatekeeper, Cloud Containers, Ubuntu, программное обеспечение, managed services, BI, DWH, блокчейн, agile, highload, database, Китай, государство, front-end, фронтенд, медицина, react, облачный сервер, языки программирования, искуственный интеллект, автомобили, ФСТЭК, законы, Облачные хранилища, функции, kubelet, Программирование, code review, анализ и проектирование систем, распределенные системы, mobx, ReactJS, web-разработка, серверы, сетевое оборудование, аутсорс, Россия, госсектор, законодательство, цифровая экономика, финансовая отрасль, цифровые платформы, контейнерные технологии, гейминг, HR tech, командная строка, ос, разработка приложений, инвестиции, нацпроект, россия, квантовые вычисления, умный город, back-end, бэкенд, ETL, mail.ru cloud solutions, финансы, квантовые коммуникации, антивирусы, квантовые технологии, Подкасты, квантовые компьютеры, криптография, цифровая трансформация, распознавание лиц, криптовалюты, 5G, clickhouse, cерверное администрирование, DoS-атаки, информационная безопасность, прокси, HAProxy, продуктовая команда, продуктовый дизайнер, стартап, UI, цифровые двойники, DNS, защита информации, безопасность данных, Информационная безопасность, Серверное администрирование, балансировщик нагрузки, Системы управления версиями, git, геймдев, исследование спроса, мобильные приложени, IT-бизнес, Julia, Python, ELT, greenplum, Администрирование баз данных, архитектура БД, схема БД, Алгоритмы, Хранение данных, схема данных, графика, VR, образование, IT, гибридное облако, блочное хранилище, нейросеть, AppDynamics, здравоохранение, маркетинг, @Databases Meetup, CORS, кейс, модернизация, Angular, VueJS, дата-сайентист, CueReport, Digital.ai, Postgres Pro, Appen Limited, optimization, Deploy, dashboards, monitoring, AI/ML, Dzone, C++, branch, commit, head, pull, гибридные облака, облачные платформ, статистический анализ, Balancer, iptables, microservices, Service Mesh, ES2020, CD, CI, metrics, namespace, видеонаблюдение
    Ссылка скопирована
    Поделиться

    Почитать по теме

    _blog_head_42.png
    4 августа

    Как перенести резервное копирование в облако и не переплачивать за инфраструктуру

    _blog_head_172.png
    3 августа

    Гибридное облако: как объединить локальную инфраструктуру с облаком VK Cloud

    _blog_head_45.png
    23 июля

    От текущих вызовов к нео-клинике: в деталях о потенциале внедрения Cloud и AI для развития медицинской отрасли

    40+ готовых сервисов