В IT компаниях принято делить всех разработчиков на джунов, мидлов и сеньоров. Точнее делят даже не в самой компании, а еще при найме сотрудники HR отдела. Так удобнее проводить собеседования, проверять знания и профпригодность, а еще сразу понятно какую зарплату предлагать соискателю. Так от чего зависит всем известная градация на джунов, мидлов и сеньоров? С этим разберемся чуть позже, а сейчас расскажем от чего она точно НЕ зависит, ну или не всегда и не в полной мере.
Содержание:
От чего НЕ зависит грейд разработчика
Грейд (grade)- слово в переводе с английского означает “оценка”, то есть то, как разработчика оценивают в компании или при приеме на новое место работы. Принято делить соискателей на младших, среднего уровня и старших разработчиков. И вот от чего этот самый грейд НЕ зависит:
- Возраст- джуном легко может быть 40-летний программист, а сеньором молодой человек, которому чуть за 20. Все зависит от вводных и того, “что под капотом”.
- Стаж работы. Очень часто принято делить разработчиков на грейды исходя исключительно из их практического опыта в годах. Однако это не совсем правильно, ниже разберем почему.
- Зарплата- еще один показатель, по которому соискатели могут воспринимать открытую вакансию, ну или сторонние наблюдатели оценивать своего знакомого разработчика. Однако и здесь все не так просто.
Всем известно, что в условном Яндексе могут платить мидлу гораздо меньше, чем в каком-то ноунейм стартапе с хорошим финансированием. Про сеньоров вообще молчим, суммы могут варьироваться от смешных (разумеется, по меркам сеньоров) до заоблачных (в понимании тех же сеньоров). Далеко ходить не нужно, скидываем пример актуальных 2-х вакансий для разработчиков уровня синьор, но с огромной разницей в предлагаемых зарплатах
Как видите, предложения финансовые для одной и той же позиции могут быть сильно разными. При этом требуемый опыт работы в годах один и тот же.
Кто такой джун
Джун- производное от английского слова junior, что переводится “младший. Разработчик грейда джун не отличается самостоятельностью и практическим опытом. Скорее всего он недавно окончил обучение и может быть неплохо информационно подкован (иначе собеседование джуну пройти будет просто невозможно), но имеется нехватка “настоящей разработки”.
Джунам обычно дают несложные задания, которые составляют лишь небольшой кусок кода, который далее должен быть встроен в общую систему. При этом только хороший джун самостоятельно сможет справиться даже с простым заданием, обычно требуется помощь сеньора или мидла. Если джун делает от и до задачу сам, то скорее всего он близится к уровню мидла.
Джуны пишут сложный код и часто ввиду нехватки опыта им кажется, что в коде сеньора как-будто многого не хватает. Только с практикой приходит понимание, что мало кода- это хорошо.
Младшие сотрудники не думают о том, как работает вся машина в целом, они пытаются сделать так, чтобы крутилось одно колесо (узкая задача джуна), а дальше- не их забота. Только хороший джун пытается разобраться в работе механизма (проекта, программы, сервиса) в целом. Это еще один главный недостаток младших специалистов- у них нет продуктового опыта, то есть работы над продуктом от и до, поэтому им нечего предложить для его улучшения или оптимизации.
Джуны также часто страдают недостатком софт силов- плохо воспринимают критику, не умеют работать в команде, задают неправильные вопросы или вообще не задают их, а ждут готового решения от наставника. Все это станет огромной преградой перед “повышением” разработчика до следующего грейда.
Джун не решает что, когда и как делать. И так же не несет особенной ответственности за свои действия. Ведь его работу всегда должен перепроверять старший сотрудник.
Компаниям джуны денег не приносят, а только наоборот. Если вам кажется, что человек же все-таки работает, то стоит просто посмотреть на зарплату сеньора, которому приходится постоянно отвлекаться на проверку или исправление кода джуна. Далее высчитываем почасовку сеньора, умножаем на потраченное им время на молодого сотрудника и все становиться понятно.
Сеньор+ джун= убытки для компании.
Джунов нанимают исключительно на будущее, их растят до мидлов и тогда-то они и начинают «зарабатывать» не только себе, но и компании.
Что знает и умеет
- знает свой стек (в теории), причем все чаще сегодня требуется не “базовая комплектация”, но желательно еще фреймворки и пр.
- выполняет несложные задачи;
- главное для джуна- сделать так, чтобы код работал, качество кода его не интересует
- работает всегда под контролем старших сотрудников
Читайте также:
Что нужно джуну, чтобы стать мидлом
Разумеется, с опытом джун рано или поздно должен перейти на позицию мидла. Однако как раз-таки рано это произойдет или поздно или вообще не произойдет (может быть и так) зависит от самого разработчика.
Способствует скорейшему переходу джуна на следующий грейд:
- Прокачка хард скилов— расширение своих задач, изучение новых технологий, саморазвитие и пр.
- Инициативность- это опять же про хард скилы, которые можно неплохо подтянуть просто выполняя работу сверх своей трудовой нормы.
- Ответственность- джуну не стать мидлом, если он будет попустительски относиться к тому и так немногому, что ему доверяют делать.
- Спокойное восприятие критики- а без нее на начальном карьерном этапе никуда. Джун должен выносить из критики не обиды и злость, а ценный опыт старших товарищей, который ему совершенно безвозмездно предоставляется.
- Любопытство- джуна должно интересовать все, относительно его компании, проекта, над которым он работает, административной части работы. Только так он сможет добрать “недостающего” до мидла.
Кто такой милд
Мидл- опять же от английского слова middle, что переводиться как “средний”.
Это, пожалуй, самый абстрактный грейт разработчиков. Если с джунами и сеньорами более или менее понятно, то когда первый переходит в мидла или этот мидл дотягивает-таки до сеньора не всегда очевидно с первого взгляда. Тем более, как уже упоминалось- требования во всех компаниях разные, как и зарплатные вилки.
Начнем с того, что мидла точно отличает от ждуна. В первую очередь- это растущая самостоятельность. То есть, если для джуна нормально не справиться самому с задачей и пойти за советом к сеньору, то для мидла это уже недопустимо. Исключение- только что нанятый сотрудник, который пока проходит “акклиматизацию” на новом месте работы. Ну или новая область ответственности, в которой у разработчика опыта еще не было.
Мидл- это уже стабильная боевая единица. Он не принимает решения, однако свою работу делает четко и быстро. Сеньор или тимлид может спокойно полагаться на мидла, ему не нужно объяснять как решить задачу, достаточно ее просто четко сформулировать. Если это не что-то сверх его квалификации, то мидл спокойно справится. Его не нужно перепроверять- мидл прошел проверку качеством своей работы и кода.
Мидл по своей квалификации находится ближе к сеньору, чем к джуну. Он уже имеет опыт проектной разработки и знает как что устроено. Хоть мидлу часто тоже доверяют лишь определенную часть сервиса, он прекрасно понимает за что именно эта часть отвечает и как она повлияет на весь проект. При этом задачи мидла намного сложнее джуновских.
Мидлу часто уже начинают доверять задания не только в разработке, но во взаимодействии отдела. Примером может служить все тот же контроль джуна или стажера, назначение вновь прибывшим задач и проверку их выполнения. Считается, что мидл должен уже уметь отвечать на вопросы и при необходимости корректировать джуна в его работе.
Мидлу не нужен контроль, он сам предлагает нестандартные решения поставленных задач и железобетонно знает свой стек. Часто мидлы знают несколько языков программирования и могут координировать работу с другими отделами. Например бэкэнд разработчик имеет представление о Vue.js и может быть на подхвате у фронта.
Мидл уже пишет не просто, чтобы работало, но, старается чтобы это было понятно. Он прекрасно понимает, что с его кодом могут работать другие разработчики и самостоятельно проверяет его, исправляет ошибки и оптимизирует.
За мидлов компании уже держаться, особенно если это ответственный и надежный сотрудник. Работодатели стараются обеспечить максимально комфортные условия работы и прислушиваются к разработчикам уровня мидл.
Что знает и умеет
- у мидла уже есть опыт продуктовой разработки;
- знает свой стек с практической стороны, умеет его грамотно применять;
- знает дополнительные технологии и несколько языков программирования (хотя бы знаком с ними);
Конкретные знания, необходимые мидлу лучше проследить на деле, то есть в открытых вакансиях.
- к хардам мидла также можно отнести английский язык, который сегодня часто можно встретить, как обязательное условие при отклике на резюме
- мидл знает проект, над которым работает и понимает, как он функционирует
- в решении задачи мидл думает не только о том, как сделать, чтобы работало, но и о том, чтобы это было удобно и эффективно
- средний специалист может всегда четко сказать срок выполнения своей задачи и самостоятельно может найти нужную информацию
- мидл должен обладать большим набором софт силов: умение работать в команде и общаться с разными людьми, отстаивать свою точку зрения, а также понятно доносить мысли и информацию как до руководства, так и до коллег.
Читайте также:
Какой мидл сможет стать синьором
Случается, что вполне приличный разработчик трудится долгое время в одной и той же компании, где вырос из джуна в мидлы. Он выполняет каждый день одни и те же по своему характеру задачи и работает с одним и тем же стеком. При этом разработчик-то он хороший и надежный. И вроде бы опыт работы уже не меньше синьоровского, но на деле он остается все тем же мидлом и не выше. Почему так происходит? Потому что разработчик сам не стремиться развиваться и совершенствовать, он сидит на прегретом месте, в т.н зоне комфорта, а дальше двигаться вроде бы как и не обязательно. Зарплата устраивает, коллектив прекрасный, начальство понимающее, а главное ответственности- минимум.
Так что же придется предпринять мидлу, чтобы стать синьором?
- опять же- быть инициативным и любознательным
- совершенствовать имеющиеся харды и приобретать новые
- развивать софт скилы, в первую очередь коммуникационные и управленческие
- вникать в особенности бизнес-процессов, чтобы знать какое техническое решение лучше предложить
- стремиться брать на себя больше ответственности
Кто такой сеньор
Вот и добрались до самого высокого грейда среди разработчиков- сеньора. Перевод слова senior закономерно означает “старший”. Это уже специалист высшей квалификации, которому не нужно бороться за место под солнцем. Скорее работодатели выстраиваются в очередь за опытным сеньором.
По сути синьор, это самая верхняя планка для разработчика, далее идут управленческие должности, где код придется писать только в исключительных случаях.
Сеньор отличается от мидла прежде всего тем, что несет полную ответственность за свою область работы и часто за код джунов в своей команде. Сеньор точно знает, какие технологии предложить для решения задач бизнеса, так чтобы это было хорошо и разработчикам и самому бизнесу. Он пишет минималистичный, понятный и прямой код, а также умеет исправлять проблемные места в чужой работе.
Синьор сможет решить новую для себя задачу и разобраться в технологиях, которые еще не использовал, если того требует проект. Он знает все о сервисе, над которым трудится и скорее всего уже участвовал в разработке проекта с нуля до запуска. Это дает ему несравнимый практический опыт, который помогает видеть возможные проблемы еще до начала работы. При этом сеньор сможет донести до тимлида или даже СТО свою точку зрения и убедить руководство принять его идеи.
Что касаемо хардов, то считается, что идеальный синьор должен быть и хорошим кодером, и архитектором, и проектировщиком, а еще и в железе разбираться. Но, понятно, что это именно идеальный сеньор, реальный, обычно все же поскромнее.
Сеньору можно доверить создание приложения целиком. Он должен уметь задавать на старте правильные вопросы и грамотно распределять задачи среди джунов и мидлов, если это входит в его обязанности.
Синьор пишет код не для того, чтобы показать, что он работает, а с прицелом на масштабируемость. Соответственно старший разработчик понимает, что его код должен быть чистым и понятным, чтобы другой человек с легкостью в нем разобрался и продолжил работу.
Что умеет
- у сеньора всегда за плечами опыт коммерческой разработки, причем часто он участвовал в создании проекта от старта до запуска
- он знает, как решить задачу максимально эффективно
- он самостоятельный и берет всю ответственность на себя, причем за работу других тоже
- хард скиллы сеньора ограничиваются только его амбициями в программировании (случается, что опытные разработчики знают и по 10 яп)
- главный софт скил, который добавляется после перехода от мидла- управленческие навыки
- синьор умеет писать понятный, чистый код и исправлять чужие “костыли”.
Сравнительная таблица
Качество | Джун | Мидл | Сеньор |
---|---|---|---|
Хард скилы | больше в теории | хорошо знает свой стек и умеет его применять | знает больше, чем требует проект |
Код | сложный и непонятный | пишет проще, умеет исправлять свои ошибки | пишет чисто, понятно и прямолинейно, умеет находить и исправлять чужие «костыли» |
Опыт коммерческой разработки | нет | есть | участвовал в разработке проекта с нуля |
Самостоятельность | слабая, его работу полностью контролируют | сам предлагает решения задач и полностью их реализует | полностью самостоятельная единица процесса |
Ответственность | нет | есть, но небольшая и только за свой кусок работы в настоящем | есть, за работу свою и младших сотрудников в настоящем и будущем |
Софт скилы | плохо развиты, тяжело относится к критике, обычно не умеет работать в команде | коммуникабельный, чувствует себя членом команды, умеет задавать правильные вопросы | главное- наличие управленческих навыков и умение убеждать |
Знание о проекте | не понимает, как работает проект, не видит картины в целом | знает, как функционирует проект и какую роль играет его работа | глубокие знания не только проекта, над которым работает, но и всей отрасли |
Работа над задачей | лишь бы работало | нужно сделать хорошо и быстро | нужно сделать так, чтобы было хорошо бизнесу |
Отношение работодателей | нанимают нехотя, только для дальнейшего обучения | при найме готовы пойти на встречу по условиям, удерживают хороших сотрудников | охотятся и сами предлагают работу, своих сотрудников готовы удерживать любыми способами |
Сколько зарабатывают джуны, мидлы и сеньоры?
Как уже упоминалось ранее, можно привести только приблизительные заработные вилки сотрудников разного грейда. Точно же на этот вопрос ответить не получиться в виду огромного диапазона финансовых предложений, прописанных работодателями в вакансия.
Зарплата специалистов чаще всего зависит от:
- Квалификации самого специалиста: есть джуны только-только с учебы, а есть уже с каким-никаким опытом. Также часто случается, что мидлы ошибочно причисляют себя к сеньорам, таковыми не являясь.
- Компании: пример выше показывает, что для разных компаний сеньор- это разные наборы навыков и соотвественно разные зарплаты.
- Самого человека: неуверенность в себе или наоборот чрезмерная убежденность в своих сверхспособностях может очень сильно качнуть зарплатную лодку при трудоустройстве.
- Стек: как ни крути, джавистам предлагают больше, чем пхпшникам.
Средние же данные для разработчиков выглядят следующим образом:
- Джунам готовы платить- от 40 до 80 тыс рублей.
- Мидлам предлагают- от 100 до 200 тыс рублей.
- Сеньоры могут претендовать на минимальную планку в 200 тыс рублей (зависит от стека), верхнюю границу назвать трудно. Как мы показывали ранее, для сеньоров есть предложения и на 10 тыс евро в месяц (около 1 млн рублей), поэтому максимум могут знать только сами сеньоры.
А что дальше?
Здесь закономерно у многих может возникнуть вопрос, а какое карьерное развитие может быть у амбициозного сеньора. Есть несколько вариантов:
- Горизонтальный рост- сеньор, достигший потолка в отделе разработки в своей компании может найти другое место работы с аналогичной должностью. Сеньоры обычно при переходе выигрывают по зарплате в районе 20%. Но это не главное, ну или не только это. Новая компания- дает возможность развиваться и поработать над новыми интересными задачами, которых засидевшемуся сеньору могло сильно не хватать на старом месте. Да и сама компания может быть значительно больше.
- Вертикальный рост- это уже руководящие посты, а именно тимлид, техлид, СТО. Должностей в ИТ компаниях обычно много, так что расти есть куда.
- Уйти в свободное плавание. Опытный разработчик, который знает как работать над проектом с нуля, умеет слышать бизнес и переносить его идеи в код, всегда может пойти во фриланс. Обычно подобные фрилансеры берут часть задач на аутсорс либо целые проекты. В последнем случае часто есть помощники и даже сотрудники.
- Создать собственный бизнес. Амбициозный сеньор с хорошей идеей, знающий, как все работает изнутри, может запустить свой стартап и развивать его.