Дефицит классных специалистов — проблема, пожалуй, всех сфер бизнеса, но для IT стоит особенно остро. Поиск специалиста среднего уровня и выше может затянуться надолго — такие кадры редко находятся в поиске работы и зачастую их приходится “переманивать”. Однако не всегда у компании есть необходимость найти именно прокачанного сотрудника — ведь некоторые задачи можно доверить junior специалисту и вырастить своего суперпрофи. При должном желании, компания может помочь вырасти новичку от джуна до мидла.
Стоит ли ставать “кузницей” кадров и какая от этого будет выгода для бизнеса — разбираемся дальше.
Кто такой джуниор разработчик?
Джуниор разработчик (Junior Developer) — это стартовая позиция в программировании, специалист с опытом до года или вообще без опыта, который только начинает свой путь в IT. Как правило, это люди, которые недавно закончили курсы, прошли интернатуру или самостоятельно изучали информацию. При этом джун имеет небольшой опыт работы с каким-либо языком программирования (например, php или python), умеет писать простые программы, понимает их принцип работы и может разобраться в чужом коде с комментариями.
Indigo Tech Recruiters School – новый стандарт знаний в IT-рекрутинге. Спикеры курса: Ирина Шамаева, Стаська Падалка, а также эксперты из Garmmarly, DataArt, Медиа-Группы Украина и, конечно, Indigo Tech Recruiters.
Смотреть программуЧем отличаются джуниор, миддл и сеньор?
Джуниор разработчик — это специалист, который способен выполнять простые рутинные задачи с перспективой роста, но нуждается в менторстве и поддержке опытных коллег, чтобы понять, как развиваться и стать мидлом. Специалист на этом уровне для компании — условные “руки”, которые могут выполнять четко поставленные технические задачи.
Фактор самостоятельности — это основная разница между джуном и мидлом. Мидл разработчик способен создавать программы самостоятельно, менторить начинающих и свободно разбирается в чужом коде. Такой специалист знает стандартные шаблоны/решения для построения приложений в своей области и понимает, как и зачем их применять. Мидлы — “золотая середина” для компании. Они могут умеют решать бизнес-задачи, ставить технические задания, вносить уточнения, если видят потенциальную проблему и активно участвовать в проекте вместе с другими членами команды.
Специалист высшего уровня не просто решает рутинные задачи, но занимается архитектурой и взаимодействием систем. В обязанности синиора входит принятие правильных технологических решений для проекта. Такой сотрудник видит потенциальные “узкие” места, где могут возникнуть проблемы и решает их еще на этапе разработки. Синиор для компании — это “голова” и решение важных вопросов. Этот специалист, как правило, пишет простой и лаконичный код и стремится стратегически закрыть задачи бизнеса.
Важно понимать, что IT — это не та сфера, в которой уровень позиции зависит от возраста, а синьоры и мидлы назначаются по количеству отданных работе лет. На самом деле цепочка “джуниор-мидл-сеньор-лид” выглядит не так. Сеньор может быть младше джуна, но отличаться от него накопленным багажом знаний, факапов и навыков.
В каких случаях компании нужен джуниор-разработчик?
Опытный разработчик в поиске работы — редкий случай. Как правило, для закрытия вакансии приходится перелопатить десятки резюме и даже заглянуть в “золотой фонд” конкурентов.
Однако, положа руку на сердце, не для всех задач и компаний нужны исключительно синьоры — джун, который горит энтузиазмом и хочет учиться, работать и развиваться, сможет закрыть часть простых и рутинных процессов. Конечно же, под менторством миддла.
Какие плюсы в найме джунов?
- Скорость. Опытного разработчика можно искать долго, а найти джуна с минимальным необходимым набором скиллов и знаний и “поднатаскать” — гораздо проще и быстрее;
- Бюджет. Даже с учетом время затрат мидла на обучение начинающего специалиста и с поправкой на потери от его факапов, найм джуна будет дешевле;
- Долгосрочная перспектива. Компания получит лояльного специалиста, который, если будет видеть свои возможности для развития в компании и рост зарплаты, может остаться надолго;
- Отсутствие “шор”. Новый человек, заинтересованный в росте, будет задавать много вопросов, попутно вскрывать недочеты кода, на которые из-за замыленности команда может уже не обращать внимание. Кроме того, каждый раз объясняя, как работает система, ментор сможет найти скрытые проблемы: например, отсутствие документации, из-за которой у джуна возникают такие вопросы;
- Стремление учиться. Начинающие специалисты заинтересованы в том, чтобы узнать как можно больше и поскорее вырасти. Кроме знаний от своего ментора, джун наверняка будет смотреть по сторонам и разбирать интересные кейсы других компаний — и попробует перетянуть новые идеи в свой проект;
- Решение старых проблем. Новенький может просто не знать, что текущая проблема — нерешаемая головная боль команды, и случайно закрыть ее в лоб. Ведь внутреннего барьера на то, что это невозможно, у него нет;
- Новые технологии. Невероятно, но факт: джуны зачастую обучаются сразу новейшим технологиям, и могут знать их теорию лучше, чем даже синьоры, которые много лет работают в своем стеке по определенному алгоритму;
- Апгрейд ментора. Человек, который тщательно объясняет что-то другому, и сам улучшает свои знания предмета. Особенно если ученик задает вопросы. Джун может “встряхнуть” своего ментора и помочь вспомнить нюансы технологий. Кроме того, наличие учеников помогает опытному специалисту понять, что его ценят в компании;
- Окупаемость. Несмотря на траты на зарплату, потерю ресурсов и потенциальные ошибки новичка, его найм уже через полгода может окупиться — запасом в фонде оплаты труда и strong специалистом;
- Около айтишные профессии. Джун может прийти из qa или работать ранее тестировщиком — и вполне успешно развиваться в front-end, java или c#.
В чем минусы найма джуниор-разработчиков?
- риск факапов. Ошибок не делают только те разработчики, которые не допускают к коду. Для того, что минимизировать цену ошибки новичка, нужен хороший ментор и много бекапов;
- трата ресурса. Значительная часть ресурса ментора будет идти на обучение джуна, а не на его непосредственные задачи по проекту;
- увольнение. “Мы его всему научили, а он ушел” — да, такие ситуации тоже возможны. Новичок, прокачавшись у вас в компании, может уйти в другое место на должность выше или более привлекательную зарплату. Но, как правило, у выращенных с нуля специалистов лояльность выше — конечно, при условии, что они видят возможности для роста в компании.
Что понадобится для организации работы джуна?
- Вводная информация и документация по продуктам. Работать с джуном-программистом по “бразильской системе”, бросив в океан кода — очень рискованный и грозящий потерями вариант. У новичка должна быть вся необходимая вводная информация: по стекам, продукту, корпоративная документация, доступы, стандартизация.
- Ментор. Для того чтобы задачи выполнялись с минимальными потерями, а джун мог вырасти в крутого специалиста, ему нужен ментор — человек, который будет ставить задачи, контролировать их выполнение, “подстилать соломку” и обучать. Чаще всего менторами становятся сильные специалисты среднего уровня.
- План развития. Приходя в компанию, человек должен понимать, как будет развиваться дальше, какие кнуты и плюшки будут на его пути. Кроме того, при наличии плана развития сама компания может делать промежуточные срезы и оценивать старания и мотивацию сотрудника.
Все новенькие сотрудники в компании в той или иной мере становятся джунами, пока вникают в процесс работы. Сотрудник на старте карьеры может стать прекрасным приобретением для команды и настоящим профи, а может зафакапить все. В успехе работы с новичками любого уровня многое зависит от самой компании.