Аутстаффинг джунов: выстрел в ногу или спасение для бизнеса?

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

Почему не хотят нанимать джуниор-разработчиков

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

Сложный вход в профессию

С одной стороны, появилось много высокоуровневых языков программирования и готовых инструментов, с другой — усложняется структура приложений, требуется знать и уметь больше. Раньше любой веб-разработчик умел верстать и пользоваться JQuery, сейчас сформировалась отдельная специализация фронтенд-разработчика, который должен ориентироваться среди фреймворков и отличать Nest.js, Next.js и Nuxt.js.

Избыток «вайтишников»

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

Аутстаффинг джунов: выстрел в ногу или спасение для бизнеса?

Туториальный ад

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

Упущенная прибыль

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

Аутсорсинг и автоматизация

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

Распределенные команды и удаленка

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

Как это влияет на кадровую экосистему

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

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

Аутстаффинг джунов: выстрел в ногу или спасение для бизнеса?

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

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

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

Кризис сениорности

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

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

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

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

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

Индустрия научилась вознаграждать инженеров за посредственные или не поддающиеся количественной оценке результаты. Чтобы прочувствовать этот момент, вспомните, сталкивались ли вы с празднованием по поводу релиза, который превысил бюджет, отстал от графика и содержал ошибки? А сколько компаний отказываются от поддержки системы в пользу полного переписывания и повторяют этот цикл позже? При этом разработчики продвигаются дальше по карьерной лестнице.

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

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

Манипуляция грейдами

Профессиональных разрядов в IT нет. Здесь принято делить специалистов на три категории — junior/middle/senior. Это достаточно грубое упрощение. Например, популярная дрейфусовская модель приобретения навыков включает шесть ступеней:

  • Новичок
  • Продвинутый начинающий

  • Компетентный
  • Опытный
  • Эксперт
  • Мастер

Такое количество ступеней можно встретить много где, например, в изучении английского языка:

  • A1 Beginner

  • A2 Elementary

  • B1 Intermediate
  • B2 Upper-Intermediate

  • C1 Advanced
  • C2 Proficiency

Разумеется, и в IT многие приняли более расширенную шестиступенчатую градацию:

  • Junior
  • Pre-middle
  • Middle
  • Middle plus (strong)

  • Senior
  • Lead / Architect

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

Как спасти ситуацию с помощью аутстаффинга

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

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

В такой ситуации следует задуматься о лизинге персонала, аутстаффинге IT-специалистов. За 2021 год такой формат сотрудничества показал свою эффективность при точечном усилении команд специалистами среднего уровня, но почему-то до сих пор вызывает сомнения, если речь заходит о младших специалистах.

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

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

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

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

Чек-лист: проверьте себя и поставщика

Если вы решили попробовать аутстаффинг младших специалистов, то проверьте, подходит ли вам такое решение. Прежде чем выбирать поставщика, убедитесь, что у вас есть:

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

При выборе поставщика обратите внимание на следующие нюансы:

  • Штатные сотрудники: специалисты являются наемными сотрудниками и официально состоят в штате компании поставщика;

  • Система стажировок: у поставщика есть четкая программа обучения, максимально приближенная к коммерческой разработке, уровень выпускников стабилен;

  • Пробный период: поставщик готов разделить с вами риски на случай, если разработчик не подойдет;
  • Подробная отчетность: поставщик ведет подробный учет времени сотрудников по задачам до минут, отчеты предоставляются еженедельно;

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

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

Спасибо, что дочитали до конца! Это блог IT-продакшна Work Solutions. Мы занимаемся аутсорсингом и аутстаффингом: создаем веб-приложения на заказ и усиливаем штат наемных специалистов. Будем очень рады вашим:

⭐ на GitHub;

➕ на Хабре;

❤ в VK.

5050
91 комментарий

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

Это значит что работодатели на собесе обещают "регулярный пересмотр, возможность роста, интересные задачи" а по факту кидают на легаси дерьмину еще и на саппорт в особо запущенных случаях, новых фич не планируется, сиди ковыряйся в куче навоза и латай дыры. И вот сидишь ты такой, спасаешь их шлюпку от полного погружения на дно, а когда обращаешься за обещанным пересмотром, тебя отшивают, в итоге чем бодаться с неадекватным менеджментом и выслушивать от HR "Что-то вы зажрались, мы же семья, деньги не важны, предатель", проще выкинуть резюме и в течение недели получить оффер с повышением, дальше повторяем действия. Причем у нас настолько не любят повышать зп, что пример из моего личного опыта - 3 года в продуктовой конторе на проекте, почти весь проект либо писался с нуля мной и ребятами, которые пришли со мной, либо переписывалось опять же нами, в итоге в конце прошлого года решили расширить команду разработки и что я вижу? А вижу я что человек с меньшим опытом чем у меня, которого я же обучаю, зарабатывает на 30% больше со старта, само собой оставаться там не было смысла

37
Ответить

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

5
Ответить

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

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

Я сейчас столкнулся с обратной ситуацией. Отчасти корпоративная культура достаточно развита, отчасти чист экономика - очень большая и сложная экосистема. Много уровней. Тот уровень, куда попал, фактически ядро системы. А это сложная архитектура, сложная бизнеслогика, нестандартная платформа и стек, где все это крутится. Все вместе дает то, что готового человека, который может прийти и сразу начать выдавать результат на рынке нет. Посему берем условного "разработчика" и готовим его под себя. Два-три месяца уходит на освоение платформы и стека. Потом еще минимум полгода человек выполняет рутинные задачи по готовым шаблонам, прежде чем более-менее наберет уровень позволяющий решать нечто более сложное и нестандартное.
В результате хороший разработчик получается через год-полтора. И конечно, в него уже вложено много и есть цель его удержать. Соответственно, уже за ним внимательно следят и стимулируют. От регулярных бонусов до повышения должности и з/п.

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

4
Ответить

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

1
Ответить

Да да саппорт... и в итоге на бекед вакансию джуна читаешь что надо знать js на уровень правок html и и т.п...
Т.е по логике сразу понятно фиксить будешь все ! И часто именно фронт.

Ну и тут имеет быть место инфляции. 3 года назад это ни сегодня.. возможно по этому и зп у человека выше на старте чем была у вас на старте там...
Конечно есть факт того о разнице между знаниями...

1
Ответить

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

17
Ответить

Вот вот.
Я сам так скажем "пешком под стол" не по возрасту, а по освоению. И то понятен смысл того как - грубо говоря - проводить обучение, когда этого человека после отправят от того же агрегатора на позицию выше к другим. Доучиваться. А после удаленкой работать через них на Европу и т.п.
Кстати на ютубе один такой рассказывал как это они делают.

2
Ответить