Чем джуниор отличается от мидла, как ориентироваться в грейдах (junior — middle — senior), что решают годы опыта, можно ли вырасти с помощью наставника за 4-6 месяцев или быстрее? С этими и другими вопросами мы обратились к менторам Solvery.
Как ориентироваться в грейдах?
Грейды по большей части применимы только в рамках конкретных задач и конкретных компаний. Если для одной компании ты — миддл, то для другой вполне можешь быть джуном, даже в рамках одних технологий. А вообще лично моё мнение — эти грейды абсолютно бесполезны и никак не отображают реальный опыт, когда выходят за пределы одной компании.
Я думаю, что грейды в какой-то мере делают жизнь в IT легче. Представьте, что никаких грейдов нет, это просто усложнит жизнь всех в IT компаниях, как мне кажется. Да, в разных компаниях разные стандарты, тем не менее есть некие сегменты компаний, где понимание грейдов схоже.

Мое видение грейдов (коротко):
- Junior — увеличивает энтропию, сам мало что может сделать, требует поддержки более старших коллег, тратит время senior/lead людей, смотрит очень узко: дали задачу — делаем задачу.
- Middle — сохраняет энтропию, может уже сам что-то делать, обращается к более старшим, но уже реже, по серьезным вопросам, начинает видеть картинку чуть шире, чем джун.
- Senior — уменьшает энтропию, видит проект целиком, понимает бизнес задачу, может сам разобраться с задачей.
Чем джуниор отличается от мидла?
С джуна до мидла — наверное, самый простой путь, который с программой менторства проходится месяцев за шесть.
Если посмотреть по градациям, в принципе, можно выделить несколько основных блоков:
General — Computer Science (big-O, data structures — обычно растёт до среднего уровня у инженеров, так как больше не требуется), Software Engineering (все области знаний описаны в SWEBOK, развиваются по мере освоения профессии + процессы создания ПО), Software Architecture (from absolute 0 to hero).
Технический домен — front/back/data/devops/etc. — основное место приложения усилий для изучения технологий. Сюда входят основной язык программирования (чем дальше от джуна, тем их больше, как минимум bash какой-нибудь добавляется и т. п.), framework + общепринятые практики в рамках технологического домена. Например, backend разработчик дополнительно прокачивает навыки по базам данных и т .п. Также надо смотреть, как инженеров понимает рынок и компания.
Бизнес домен — насколько человек может коммуницировать и создавать решения для определенного бизнес-домена, так как он может наложить ограничения на решения. Например, специалиста в электронной коммерции нет смысла мучить по вопросам privacy, а специалиста по Life Science по SEO-оптимизации.
Обычно качаются так:
Junior to Middle — технический домен, General на необходимый уровень, в основном история больше про hard skills.
Middle to Senior — технический домен + General на продвинутые топики (планирование, оценки, и т. п.) + Процессы + Architecture + soft skills по презентации, защиты технических решений и т. п.
Senior to Lead — выбирается путь до Tech Lead или Team Lead и уже делается фокус на более узкие участки навыков для развития, которые нужны прежде всего компании. Например, Tech Lead может быть как архитектором на проекте, так и техническим специалистом на presale.
Lead + — только менторинг, потому что уже сложнее прорабатывать планы развития.
По оценки уровня очень много компромиссов, поскольку в процессы того же интервью будут отклонения. Проблемы — это выводить интегральную оценку, так как какие пункты могут быть намного выше, какие-то ниже.
Умение не впадать в ступор при виде сложной задачи отличает специалиста от новичка. А как это отличие обозначается — грейд, должность или что-то ещё — не принципиально. Ну и да, подразумевается определенный уровень компетенции по этой задаче, а не голый энтузиазм.

Получается, что можно не ждать 2 года, чтобы дорасти от джуна до миддла, это всё история про hard skills, которые довольно быстро нарабатываются?
Станислав Усольцев:
Да, при наличии постоянного ментора/супервайзера. Если джун просто работает на проекте, и им никто не занимается, тогда и 2-х лет не хватит.
Обычно путь занимает 2-3 года между грейдами. С ментором намного быстрее на нижних грейдах. Также очень хорошо менторство работает с опытными специалистами, которые стали «джунами», потому что сменили сферу деятельности. Там тоже буст очень большой и человек уже через пару месяцев может перфомить на уровне Middle.
Дамир Шагаев:
Можно ли вырасти до Middle за год, убрав кучу встреч, лишних разговоров, уточнение требований и т. п.?
Станислав Усольцев:
Джун может попасть в очень интенсивный проект без митингов на 6 часов в день, где работать придётся больше. Или работать сразу на двух проектах, или на 1 рабочем проекте и ещё фрилансить. Это будет влиять на сокращение времени роста до мидла. Также любая активность, где требуется принимать много технических решений, заметно сокращает длительность обучения. Например, студенты, которые днями и ночами активно “пилят” стартап, по своим навыкам очень быстро догоняют мидлов, а иногда и сеньоров в отличие от тех, кто по 6 часов в день сидят в корпорации на митингах на протяжении 10 лет.
Не течение тикетов надо измерять, а сколько человек ошибок совершал и принимал решений. Ведь если закрыть 1 000 000 тикетов по созданию кнопки, это не то же самое, что закрыть 1 хороший Epic.
Дамир Шагаев:
Можем ли мы (как менторы) создать ситуации, в которых человеку придется принимать много решений? И каждое решение не просто его обучит, а максимально подготовит к продакшену?
Станислав Усольцев:
Можно. Надо просто знать, с какими проблемами сталкиваются мидлы, что они в нашей компании решают и просто продвигать человека pet проектами, shadowing’ом и работой с ментором на проекте — так скорость обратной связи в разы возрастает.
В заключение хотелось бы сказать, что в других статьях мы обязательно продолжим обсуждение похожих тем. Большая благодарность менторам Solvery, которые приняли участие в дискуссии:
Данила Евграфов — CTO, ведущий разработчик в Zvonobot
Александр Васильев — Data Science Team Lead, Data Science Mentor and Coach в avasilev.me
Станислав Усольцев — Software Engineering Manager в Quantori
Дамир Шагаев — инициатор обсуждения, благодаря которому возникла тема. Разработчик в Яндекс.
Евгений Борминский — Product Manager в Райффайзенбанк.