
Рассказываем, чем junior разработчик отличается от middle, а middle — от senior, как разработчики продвигаются по карьерной лестнице и что влияет на их зарплату.

Что такое грейд?
Грейд — это уровень профессиональных знаний и навыков. Система грейдов помогает работодателям искать сотрудников нужного уровня, а самим работникам — понимать, насколько высоки их компетенции и к чему стремиться. Оценивать сотрудников по грейдам принято в IT и смежных сферах.
Традиционно выделяют три уровня компетенций: junior, middle и senior — начальный, средний и самый высокий грейды. Иногда между ними еще добавляют промежуточные: junior+ и middle+.

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

Есть какой-то конкретный скиллсет, которым должен обладать разработчик на каждом уровне?
Такого общего фиксированного списка нет, да и быть не может. Представим небольшую студию разработки в городке на территории СНГ или мирового гиганта вроде Microsoft. Вероятно, набор знаний и навыков у junior-разработчика в этих двух компаниях не будет одинаковым.
Сами программисты часто пытаются разобраться в критериях, по которым назначаются грейды — в частности, в публичных дискуссиях в соцсетях. Но единого ответа нет, только субъективные мнения и опыт.
Система грейдов везде разная. Но для себя выработал правило:
— Глеб Михальков (@GlebMihal) May 25, 2022
— Если дать задачу джуну, результат непредсказуем.
— Если дать задачу миддлу, то он ее решит, но иногда так, что лучше бы не решал.
— Сеньор просто решит задачу.
Более того, в грейдах учитывают не только hard-, но и soft-скиллы, а также компетенции в нужных областях. И, например, senior backend-разработчик в FinTech может оказаться, скажем, middle, перейдя в EdTech-компанию.
Все относительно. В одной компании ты синьор, в другой — миддл, в третьей — архитектор 😅. Не нужно натягивать на себя грейд. Только во время собеседования станет понятно как твой опыт ложится на задачи компании и на какую позицию ты сможешь рассчитывать
— Nikita Burtsev, 💙💛 (@burtsev_nikita) May 25, 2022

У специалистов с разными грейдами будет разный уровень зарплат?
Да, в рамках одной компании. А вот говорить, что junior-разработчики в целом получают, например, 800 $ в месяц, а senior-разработчики — 8000 $, нельзя. В маленьком ИП или в мировой корпорации цифры будут ощутимо различаться.
Так, например, многие разработчики рекомендуют вообще не упоминать грейд в резюме: указать только годы опыта и перечислить компетенции. И рекрутеры конкретной компании сами будут решать, считается ли у них этот кандидат джуном или синьором.
Впрочем, если соискателю важно обозначить свой уровень притязаний, грейд можно писать. Так, например, совсем «зеленый» джун может отсеять работодателей, которым нужен реальный опыт работы. А продвинутый программист — показать, что ценит себя, указывая наивысший грейд.

А сами компании пишут грейды в тексте своих вакансий?
Да, многие пишут. Но ориентироваться на это трудно, проще посмотреть на задачи, которые они требуют выполнять. Иногда рекрутер оказывается неопытным или компания хочет привлечь внимание к вакансии креативом — и грейды могут указывать непредсказуемые. Проще читать подробные требования и опираться на них.
Ну что сеньеры-помидоры, вы уже готовы апать свой грейд? pic.twitter.com/F4Oxchqkj5
— Угловой (@VladimirChase) June 13, 2022

Грейды повышаются только до уровня senior? А как тогда становятся тимлидами или архитекторами?
Senior-разработчик может претендовать на должность лида или архитектора. Но это именно другие должности, а не грейды — тут другие задачи, нужен немного иной набор компетенций.
И junior, и senior-разработчик пишут код, просто разной сложности. А вот лид уже занимается менеджментом, архитектор — структурой информационной системы. Какому-то синьору может быть просто неинтересно работать лидом или архитектором, и это не значит, что его квалификация ниже.

Выходит, во всех компаниях система грейдов — от джуна до синьора, и разнятся только требования?
Система junior-middle-senior — самая распространенная и всем понятная в IT. Но это не значит, что каждая компании ее использует: работодатель может оценивать компетенции сотрудников как захочет.
В некоторых организациях, например, числовая система. Причем везде разная. На Reddit разработчик пишет, что в Intel грейд 7 соответствует уровню senior:
А вот программист в Twitter рассказывает о найме в Epam: грейд 11 соответствует уровню middle+, 10 — ниже.
я проходил собес осенью, мне дали 10 грейд и сказали 11 это мидл+
— Zack 🤍💙🤍 (@truezed) February 6, 2022

Что в итоге
Приписывать к своей специальности junior, middle или senior — удобный способ примерно обозначить свой опыт и уровень знаний. Но никаких точных критериев тут нет.
Помните, что работодатели подразумевают под этими уровнями разный набор компетенций, а иногда и вовсе внедряют собственную систему оценки.