«Я middle или уже senior?» - вопрос, на котором спотыкаются и сами разработчики, и переговоры о зарплате. Грейды кажутся размытыми, у каждой компании свои названия, а переходы непрозрачны. Но за разными ярлыками стоит общая логика роста: от выполнения задач к владению неопределённостью и влиянию на систему и людей. Эта статья разбирает карьерную лестницу в IT - что значит каждый грейд, чем отличаются треки и что качать на каждом шаге.
Коротко:
- Грейд определяется не стажем, а уровнем самостоятельности и масштабом влияния.
- Лестница: junior → middle → senior → staff/principal (и менеджерский трек параллельно).
- На senior карьера раздваивается: технический (IC) трек или менеджмент.
- Растёт тот, кто уже работает на уровень выше своего формального грейда.
Что вообще определяет грейд
Главное заблуждение - что грейд связан с количеством лет опыта или количеством технологий, которыми владеет специалист. На деле он про две вещи: уровень автономии (насколько размытую задачу вы можете взять и довести до конца сами) и масштаб влияния (на что распространяется ваша ответственность - на задачу, на сервис, на команду, на организацию). Стаж лишь коррелирует с этим, но не определяет: бывают «вечные middle» с семью годами опыта и быстрые senior с четырьмя.
Junior: выполняет задачи под присмотром
Джуниор работает с чётко поставленными задачами и нуждается в ревью и поддержке. Это нормально и ожидаемо. Фокус роста - научиться доводить задачи до конца самостоятельно, разобраться в кодовой базе и инструментах, привыкнуть к процессам (ревью, тесты, релизы). Главный навык на этом этапе - перестать застревать молча и научиться задавать правильные вопросы.
Что качать: основы стека, чтение чужого кода, базовую инженерную гигиену, скорость обучения.
Middle: самостоятельно решает поставленные задачи
Миддл уверенно закрывает поставленные кем-то задачи без постоянного контроля. Ему дают фичу - он её делает целиком, с тестами и без няньки. Это рабочая лошадка команды. Граница, на которой многие застревают: middle ждёт чёткой задачи, а senior берёт размытую проблему.
Что качать: глубину в стеке, качество кода, оценку сроков, начало системного мышления, помощь джунам.
Senior: берёт неопределённость и видит систему
Сеньор получает не задачу, а проблему («у нас тормозит чекаут») и сам превращает её в план и результат, принимая десятки решений без подсказок. Он видит, как его код влияет на всю систему и на будущее, думает про trade-offs и усиливает команду через ревью и менторинг. Senior определяется не объёмом знаний, а автономией и охватом.
Что качать: системное мышление, владение неопределённостью, влияние на команду, коммуникацию и обоснование решений.
Staff / Principal: влияние за пределами команды
Выше senior начинается уровень, где влияние выходит за пределы одной команды. Staff-инженер решает задачи на уровне нескольких команд или всей технической организации: задаёт направление, разруливает кросс-командные проблемы, влияет на архитектуру и стандарты. Это всё ещё технический трек (individual contributor), но с масштабом, сопоставимым с менеджерским. В работе такого специалиста больше дизайна, согласований, технического лидерства.
Что качать: техническую стратегию, кросс-командное влияние, менторинг senior'ов, умение двигать большие изменения через людей.
Развилка: IC-трек против менеджмента
Примерно на уровне senior карьера раздваивается:
- IC-трек (individual contributor): senior → staff → principal → distinguished. Вы растёте как инженер и технический лидер, не управляя людьми напрямую. Глубина и техническое влияние.
- Менеджерский трек: team lead → engineering manager → director. Вы растёте через управление людьми и командами: найм, развитие, процессы, меньше кода.
Важно: это не «вверх» и «вниз», а две равноценные ветки. Хороший staff-инженер по влиянию и зарплате сопоставим с менеджером. Выбор - про то, что вам ближе: техническая глубина или работа с людьми. Можно и переходить между треками.