Junior/Middle/Senior. Как определить уровень? Гайд для разработчиков и работодателей

junior-middle-senior

Junior/Middle/Senior. Как определить уровень? Гайд для разработчиков и работодателей

  • #IT-персонал

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

Специалист junior-уровня. Портрет

Многие работодатели в сфере ИТ с осторожностью относятся к найму специалистов начального уровня, поскольку считают, что младший программист ничего не умеет.

Чаще всего это не так. Хороший “джуниор” – это специалист, который прошел курсы или стажировку и знает самые важные основы профессии, но не имеет достаточного опыта для повышения своей квалификации. В портфелях, по крайней мере минимальных, обычно есть младшие ребята. К ним относятся домашние проекты, репозитории на GitHub, участие в хакатонах и других ИТ-мероприятиях.

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

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

Ключевыми качествами младшего разработчика являются:

  • Высокая мотивация и пресловутые “горящие глаза”;
  • Наличие минимального портфеля;
  • Базовые знания о профессии;
  • Способность решать простые задачи, но под постоянным контролем;
  • Длительное решение простой задачи. В среднем, младшему разработчику требуется в 1,5-2 раза больше времени для выполнения задачи, чем специалисту среднего уровня;
  • Неспособность выполнять сложные задачи, такие как анализ кода.

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

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

Портрет Middle-разработчика

Это, пожалуй, самый размытый (с точки зрения терминологии) уровень специалиста. Работая с рядом ИТ-компаний, мы видели, как один и тот же кандидат продвигался до должности младшего специалиста в одной компании и даже до “старшего” в другой.

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

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

Ключевыми характеристиками среднего девелопера являются:

  • опыт работы в проектах с высоким уровнем стресса;
  • способность самостоятельно решать сложные проблемы и исправлять ошибки;
  • способность выполнять рефакторинг кода;
  • Необходимость в наставничестве для принятия сложных решений или понимания направления работы.

Портрет Senior-разработчика

Разработчики старшего уровня в основном не нуждаются в наставничестве. Чаще всего они обладают богатым опытом и передовым технологическим стеком.

Чем JUNIOR отличается от SENIOR разработчика? И как быстрее стать Senior?

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

Уровни профессионального развития разработчика: Junior, Middle, Senior.

При поиске старшего разработчика не ориентируйтесь на количество лет работы. Специалист может проработать в ИТ не менее 10 лет, но если это был проект с большим количеством унаследованных и примитивных задач, то кандидата трудно назвать “старшим”.

Ключевыми характеристиками старшего специалиста являются:

  • Полная автономия;
  • Способность влиять на продукт и умение находить оптимальное решение;
  • Компетентность в проведении обзоров кода;
  • Способность управлять командой разработчиков и самостоятельно распределять задачи внутри команды;
  • Сильная подготовка;
  • Солидный опыт работы в проектах под высоким давлением;
  • Способность быстро осваивать новые технологии;
  • Способность мыслить глобально и решать проблемы, исходя из потребностей бизнеса.

Если для среднего и младшего уровней существуют переходные этапы, такие как средний+ или младший+, то для старшего уровня такого обычно нет. Старший уровень – это, конечно, еще не вершина айсберга (есть возможность продвинуться до позиций Team Lead, Tech Lead и CTO), но это позиция, где специалист способен найти жизнеспособное решение очень сложной проблемы.

Общие принципы:

  1. Младший, средний, старший – не привязаны к рабочему времени. Вы можете оставаться “юнцом” в течение 10 лет или вырасти в уверенного “сеньора” за 2-3 года. В данном случае все зависит от самой компании и проектов, которые она создает.
  2. При поиске специалистов высокого уровня важно понимать рынок. Часто именно рынок диктует, какие компетенции специалиста уже относятся к среднему уровню, а какие можно рассматривать на младшую позицию.
  3. Хотя существуют универсальные метрики, нет четких границ, определяющих уровень специалиста.

Совет разработчикам:

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

Совет работодателям:

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

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