Анализ зарплат программистов и аналитиков в одной картинке: где стеклянный потолок
Всем привет! Я Лаптев Алексей, основатель и главный разработчик сервиса бесплатной сквозной аналитики и коллтрекинга Utmstat. Сегодня расскажу, чем отличаются специалисты на каждом сегменте зарплат.
Также веду Telegram-канал про сквозную аналитику.
С какой целью делался анализ
Анализ проводился на HeadHunter путём вбивания названия инструмента и выписывания диапазонов зарплат.
Цель — понять диапазоны зарплат аналитиков, наглядно продемонстрировать, сколько стоит ручной труд и какая выгода от его автоматизации. Ну и с программистами сравнить.
Junior, Middle, Senior, «если очень повезёт» — в чем разница
Расскажу с точки зрения программиста, но подойдёт к любой сфере деятельности.
Junior
С одной стороны, это горящие глаза и любознательность, желание применять все новейшие инструменты и фреймворки. Но с другой — это боль и колоссальная потеря времени на управление этим бурным энтузиазмом.
Junior будет делать задачу, которая решается в 10 или даже 0 шагов за 100.
Junior обычно не видит и особо не пытается понять проект целиком, делает задачи по принципу «здесь и сейчас». Задача-то готова, но решение порой абсолютно неправильно или переусложнено с точки зрения архитектуры проекта и требует переделки.
Junior обычно не понимает, что модный фреймворк или библиотека, вышедшая 13 минут назад, никому не интересна кроме других junior-ов и за неё никто не будет платить. А вот времени на споры и переделку задач на типовые инструменты уйдёт много.
Junior обычно считает что тем короче и нечитабельней его код — тем круче. А то, что у другого разработчика уйдут часы на понимание этого шедевра, — неважно.
Junior стоит дёшево, но это компенсируется потерей времени более дорогих специалистов на его консультации. Доверять можно простые задачи и обязательно всё за ним проверять.
Middle
Это Junior, прошедший несколько месяцев унижений и ударов по рукам за кривой код от более опытных товарищей.
У него уже выработаны паттерны, как надо решать задачи в рамках проекта. Пришло понимание, что в приоритете простота и надёжность кода, скорость решения задач, а не модные библиотеки и навороченный код. Сам код местами кривоват, но не так критично, правится быстро.
Это уже более-менее самостоятельная единица, которой можно что-то делегировать и при этом получать экономию времени, а не ещё большую его трату.
Senior
Этот товарищ обычно с опытом лет пяти и более. Примерно более года на одном проекте. У него в голове уже есть типовая архитектура решений в его сегменте.
Особо ничего не придумывает, а просто на каждую задачу выдаёт шаблонное решение, а если junior придумает что-то «новое», автоматически заметить это на код-ревью.
Умеет раздавать задачи.
Так что-то его ценность — это постановка процесса разработки проекта на стабильные рельсы типовых решений и какой-то предсказуемости сроков.
Если очень повезёт
На мой взгляд, в этой категории в основном специалисты, которые являются первоклассными технарями с широким кругозором, умеют решать задачи за минимальное число шагов, при этом имеют прокаченные скиллы по управлению и пониманию ценностей бизнеса.
Умеют разговаривать с технарями, менеджерами, заказчиками на их языке и переводить с одного на другой.
Человек-оркестр, и обычно они не ищут работу.
Им можно просто сказать: «реши проблему» — и она будет решена более-менее грамотно. Будь то разработка и реализация маркетинговой стратегии или разработка сервиса.
Выводы
1. Стеклянный потолок по версии HH на уровне 280 тысяч рублей в месяц.
2. Если хотите реализовать сложный проект, наймите хотя бы одного Senior и дайте ему в управление Middle или Junior. Поверьте, это оптимальный вариант, кому-то сэкономит год времени.
"Junior стоит дешево, но это компенсируется потерей времени более дорогих специалистов на его консультации."
Ну так отож! Всеж сразу из роддома вышли "сеньорами" и "сеньоритами". Прямо как "Требуется девственница с опытом в сексе от 2 лет".
Откуда возьмутся эти мидлы и сеньеры?
Все мидлы и сеньоры сначала были простыми джунами, а миф о том, что для джунов нет работы и не стоит даже начинать, распространяют действующие программисты, опасаясь высокой конкуренции в будущем.
а какая может быть работа для человека, который ещё не умеет работать? ты ведь понимаешь, что в вузе не учат всему, что небходимо при работе программистом, и джуну нужна опёка?
А причем здесь ВУЗовское образование? За полгода реально изучить больше информации и получить больше опыта, чем за 5 лет в ВУЗе. В ВУЗе ведь чистого времени на обучение реально полезным навыкам тратится 3-4 часа в неделю максимум.
1. а что вы называете реально полезным навыком? к примеру, умение логически мыслить к ним относится? математика его развивает?
2. так вы согласны что выпускник вуза не обладает всеми нравыками, необходимыми для работы мидлом? и что пока он их не освоит, он будет учиться за счёт рабочего времени, плюс нуждаться в супервизии?
1. Я говорю о чистом времени конкретно на изучение основ программирования в ВУЗе.
2. Согласен.
ну если в вузе учат только основам программирования, то это шикарный вуз. значит, остальное время вас учат думать, а CS с таким багажом вы как-нибудь и сами изучите :)
- поставить статистику в код
- поправить запятые
- изменить цвет кнопки
...,
через N таких тасков человек уже понимает, что где в коде лежит и как работает - и ему можно давать задания
- добавить фильтр на покупки по цене
- улучшить авторизацию
- добавить офлайн-сохранение в базе данных
примерно так я и проходил первые свои три месяца джуниорства. И очень радовался таскам с запятыми и цветами кнопочек - хотя еще и улыбался - мол, на собеседовании как мучали-спрашивали, а тут такая детская работа. Но ничего, через месяц, когда дали таск "прикрути офлайн режим с локальной базой данных" - все знания пригодились, как и знакомство с кодом проекта, которое проходило на запятых
такие мелкие таски встречаются часто, отдавать их сеньорам - тратить их время впустую. Пусть пишут ядро проекта, первые рабочие версии, а допиливание могут делать уже те, кто послабее
А вы не думали, что джуном может быть не только выпускник вуза, но и специалист меняющий профиль деятельности, например инженер поддержки ушедший в разработку или системный администратор? Т.е. он в программирование 6-12 месяцев, а так то у него опыта смежного 5-10 лет, и работать он точно умеет.
речь идёт главным образом о software engineering (git, отладка, документирование, agile...) и знании экосистемы языка (libs, tools, IDEs), достаточных для повседневной работы
вот к примеру, я пользовался git в чисто линейном режиме, и чтобы привыкнуть свободно манипулировать коммитами, мне понадобилось полгода работы в командах, где это обычный стиль работы
Я о том что эти люди могут быть не после вуза, и уже пользовались git например, и возможно есть даже репозиторий на git hub с парой библиотек на c++ или python скриптами , которые писались в админстве
безусловно, может быть что угодно. в конечном счёте, важен не формальный стаж, а сколько времени будет тратиться на супервизию данного конкретного индивидуума. человек, дсотигший мидл уровня, требует время только на code review и архитектурные решения