Когда Junior становится Middle? Как сотруднику уровня Middle дойти до Senior? Рассказываем, в чём отличие программистов разного уровня и как градация влияет на уровень компетенций, зарплат и задач.
Кто такие Junior, Middle, Senior разработчики?
У IT-специалистов принята градация «по старшинству». На ступень выше переходят, когда программист освоил новые навыки и приобрёл опыт; постоянно развивается. Отличие от компании к компании возможна, но всё же есть признаки и пул задач, которые объединяют группы специалистов в такую градацию.
Уровень Junior разработчик
Это — вчерашний студент-программист, который совсем закончил вуз или качественную образовательную онлайн-программу. Чаще всего у такого молодого разработчика уже есть какой-то опыт: он мог писать код для себя или соревноваться в студенческих профильных конкурсах. В любом случае, в портфолио любого Junior есть несколько работ, которые он выполнял во время учёбы самостоятельно или как часть учебной группы.
Важно понимать, что — отправная точка. Первые месяцы работы программист учится и больше отнимает время у старшего сотрудника, чем приносит пользу. На самом деле, полноценным Junior разработчик становится в тот момент, когда молодой программист может самостоятельно выполнять простые задачи. Обычно на это требуется около шести месяцев постоянной работы с наставником.
Круг задач Junior разработчика
Программист, который претендует на уровень Junior выполняет несложные задачи под наблюдением старшего сотрудника. Они не требуют никакого креативного подхода или серьёзных знаний. Задачи, которые выполняет Junior разработчик, всегда имеют чёткие описания или шаблон. Среди них:
- поправить код в соответствии с новым правилом из линтера (автоматической программы, которая самостоятельно «причёсывает» код);
- добавить элемент в пользовательский интерфейс сайта или мобильного приложения;
- разработать валидацию данных;
- написать автотест;
- написать с нуля и протестировать простейший код.
Что умеет Junior разработчик?
Очевидно, что джуниор программист не имеет богатого опыта разработки. У него самый начальный уровень. При этом, от Junior требуется, чтобы он освоил синтаксис хотя бы одного языка программирования и умел писать на нём код.
Младшая градация специалиста подразумевает, что разработчик должен знать шаблоны проектирования, быть знакомым с архитектурой проектов и тестированием, основами алгоритмизации и структуры данных. Хорошо, если он знает, как повысить производительность и безопасность продукта.
Уровень Middle разработчик
Спустя примерно год-два, если Junior развивается и совершенствует свои навыки, он переходит на новый уровень. Градация Middle подразумевает, что программист имеет опыт разработки, может справляться с задачами самостоятельно, без помощи наставника. В отличие от младшего специалиста, миддл делает намного меньше ошибок и способен подходить к задаче креативно, то есть находить незаурядные решения.
Возможно, Middle разработчик не представляет общую картину проекта, но видит решение конкретной задачи, которую перед ним поставили. Он разбирается в своей специализации, может проконсультировать коллег другого профиля. Уровень Middle для программиста означает, что он — уверенный специалист. Эта градация — уровень нормального разработчика.
Круг задач Middle разработчика
Уровень мидл подразумевает, что программист справляется с задачами самостоятельно, без помощи других специалистов. Среди них:
- добавить новые страницы на сайт или в мобильное приложение;
- изменить существующий сервис;
- предложить лучшее решение в разработке для бизнес-задачи компании;
- написать программу для автоматического тестирования продукта.
Что умеет Middle разработчик?
В отличие от джуна, миддл не только знает язык программирования, но и использует дополнительные технологии. Middle программист умеет не только писать код, но и корректировать его, чтобы он стал проще и понятнее. Уровень Middle подразумевает, что разработчик самостоятельно выполняет задачи по своей компетенции.
Уровень Senior разработчик
Высшая градация специалиста в IT и самый продвинутый уровень — Senior. Такой программист имеет богатый уровень разработки, высокие жёсткие и мягкие навыки. Обычно сеньором становятся после примерно трёх-четырёх лет опыта работы в разработке.
Основное отличие Senior в том, что они абсолютно самостоятельны, видят весь спектр проекта (как с точки зрения разработки, так и с бизнес-стороны), и несут ответственность за свои действия. Уровень Senior также позволяет руководить командой из менее опытных специалистов и выполнять менеджерские функции.
Круг задач Senior разработчика
- коммуникация с заказчиком: выступления на статусах, согласование правок и ТЗ. Выяснение технических тонкостей разработки и защита своей точки зрения;
- создание и реализация архитектуры проекта;
- создание готовых инструментов для решения задач в разработке, которыми будет пользоваться менее опытный программист;
- управление командой: проверка решений junior-разработчиков, постановка задач.
Что умеет Senior разработчик?
Старший уровень программиста — очень ценные кадры на рынке IT. Такой специалист может с нуля прописать и реализовать архитектуру проекта — как самостоятельно, так и с помощью других разработчиков. Хоть Senior и имеет профиль, он часто разбирается во многих отраслях программирования, поэтому может работать вместе с другими разработчиками и понимать, что они делают.
Как продвигаться по карьерной лестнице?
Уровень специалиста не имеет чётких границ. Градация программиста может варьироваться от компании к компании. Бывает, что Senior переходит в другую компанию на ставку Middle даже на больший уровень зарплаты. При этом есть определённые правила и путь, которые помогут преодолевать карьерную лестницу.
От Junior к Middle
Чтобы младший специалист перешёл на уровень среднего, ему нужно знать минимум один язык программирования на уверенном уровне. Важно изучить технологии, которые помогут разрабатывать, масштабировать, улучшать и обслуживать веб- и мобильные приложения. Также Middle программист должен быть знаком с компиляторами — программами, которые автоматически переводят текст с языка программирования в машинный код.
Самый важный показатель того, что джун готов стать мидлом — разработчик не делает большого количества ошибок (это — основное отличие), может улучшать как свой код, так и чужой.
От Middle к Senior
Программист может и не переходить на старший уровень, а всю карьеру «служить» исполнителем Middle. Но если тянет покорять вершины, стоит изучать новые технологии — постоянно мониторить тренды отрасли и обучаться новейшим решениям. Полезно анализировать код популярных мировых проектов и изучать разные системы управления баз данных.
Кроме того, стоит развивать коммуникационные навыки, ведь важная часть работы Senior — общение с представителями бизнеса, начальством и младшими сотрудниками. В этом отличие от Middle и Junior, которые очень редко участвуют в работе, которая не предполагает разработку напрямую.
Куда развиваться Senior?
Градация подразумевает, что самый высший уровень разработчика — сеньор. Но есть несколько смежных профессий, куда программист высшего уровня может перейти и развиваться в новой области.
Техлид — директор по информационным технологиям. Специалист, который отвечает за работу всей команды. Это — самый сильный разработчик в команде. Он готовит задачи для каждого разработчика, проверяет итоговую работу, принимает решения.
Тимлид — посредник между командой разработки и менеджером проекта. Его главная задача — донести ТЗ до конкретного разработчика и сделать так, чтобы каждый был занят нужным делом. В отличие от техлида, эта позиция более менеджерская, но тимлид тоже часто принимает участие в разработке.
Проджект-менеджер — руководитель конкретного проекта. Более широкая должность, потому что проджект взаимодействует и с командой, и с заказчиком, и с другими отделами. Специалист в курсе всех аспектов проекта и работает над тем, чтобы продукт получился целостным и удовлетворил желания заказчика.
IT-архитектор. Это разработчик высшего эшелона, который обладает большим опытом в программировании. Он создаёт архитектуру проекта, чтобы она отвечала требованиям заказчика и была реализуема командой.
Сколько времени занимает продвижение по карьерной лестнице?
Конечно, не только время влияет на рост специалиста. Программист должен постоянно совершенствоваться, изучать свою область, решать необычные задачи и подходить к своей работе с креативом. Тогда он соберёт не только стаж, но и навыки и кейсы.
Но есть некоторые закономерности по тому, сколько занимает путь от Junior к Senior.
- На уровень Junior уходит примерно год–полтора активной разработки.
- Уровень Middle достигается за два—семь лет работы.
- Senior может стать разработчик, который активно работает пять—семь лет.
Средние зарплаты разработчиков
На оклад программиста влияет не только градация и уровень, но и компания, условия работы и его навыки. При этом есть примерные вилки окладов на каждом этапе развития разработчика.
Junior зарабатывает от 30 тысяч рублей в месяц. В столице оклады доходят до 60 тысяч.
Middle разработчик может рассчитывать на вилку в 90 — 120 тысяч рублей.
Senior — очень востребованные программисты на рынке. Их оклады начинаются от 150 тысяч рублей в месяц и не имеют потолка.
Где учиться на разработчика
В разделе "Интернет профессии" и "Программирование" вы найдете актуальные курсы по веб-разработке, мобильной разработке и не только.