В чем разница между мидлом и сеньором
Заметка навеяна вопросом друга на эту тему, решил развернуто ответить.
Далее пойдут, разумеется, лишь только мои мысли, которые основаны на моем опыте. Специально перед написанием этой заметки решил ничего не читать в других местах, чтобы не замылить собственное ощущение. Приступим.
В чем разница между мидлом и сеньором? Пройдем по пунктам:
Зам тимлида
Да, позиция сеньора означает, что он может быть потенциальным замом тимлида, Что это значит?
- Это значит, что нужно будет понимать +‑ в целом архитектуру всего проекта.
- Иметь нужные доступы по работе, подменять иногда тимлида, чтобы при уходе оного в отпуск проект не останавливался в ступоре.
- При необходимости участвовать в совещаниях по планированию и интеграций.
- Не замыкаться только лишь на своих задачах и понимать куда идет разработка в целом.
- Уровень soft‑skills должен быть на должном уровне, чтобы можно было вести переговоры с другими командами, решать конфликты внутри команды и не создавать их самому.
Ответственность
Здесь разница именно в том, что сеньор прежде всего должен уметь взять задачу / направление в развитии проекта и вести его до нужного результата.
Понимать, что дальше с большой долей вероятности эта задача связана с человеком и придется за нее отвечать и далее. А это включает в себя процесс по переводу знаний другим коллегам, то есть уметь донести нормальным образом свои мысли до других.
Техническая часть
Разумеется техническая часть также важна. Сеньор должен иметь понимание как решить разные задачи, какие плюсы и минусы у конкретного решения и чем могут быть эти решения чреваты.
Есть базовые пазлы разработки и они должны быть знакомы сеньору. Причем пусть даже какая‑то из технологий не известна — это не страшно, всегда можно погрузиться настолько, насколько это нужно, чтобы начать перформить на должном уровне.
Общий опыт работы
За два года нельзя стать сеньором, разве что в каких‑то фильмах, а не в реальности. Потому что опыт вещь такая, которую нарабатываешь с годами. Есть множество условностей и договоренностей как делать правильно, а как нет. И чисто физически их получить за короткий промежуток времени сложно, если вообще возможно.
Зачастую это опыт не просто технический, а общий в разработке. Нужно знать и понимать что делать и как, нужно понимать круг своих обязанностей, нужно понимать и правильным образом ожидать от других действия. А это нарабатывается с годами. А это нельзя покрыть теоретическими знаниями и техникой написания алгоритмов и решением задач на литкоде. Это нечто большее. Это уверенность человека в своей правоте, умение отстаивать свое решение.
Вместо итога
Резюмируя скажу, что это лишь мое мнение и мнение во время, пока я работал. Почему уточняю? Потому что определение лычек меняется всегда и нет каких‑то точных черт, которые бы гвоздями прибили разницу эту.
Друзья, также есть телеграм канал по разработке, кому интересно — подписывайтесь.
- senior engineer
- middle
Tech lead. Чем отличается от архитектора или сеньора?
Название говорит само за себя, это главный технический специалист, самый активный и имеющий большой опыт в экспертизе и в техническом стеке проекта. Часто это роль неформальная. Просто есть в команде опытный специалист, к мнению которого прислушиваются другие.
Техлид может быть и тимлидом. Ряд компаний вообще не видят тут проблем. Иногда он может выполнять функции PM, тогда его могут называть Delivery Manager. Вот так ).
Давайте подробнее рассмотрим обязанности техлида и с какими трудностями ему приходится сталкиваться в работе каждый день.
Присоединяйся к школе HRPR в Telegram-сообществе IT-Рекрутеров и в соцсетях
Подробнее
Обязанности
Техлидами становятся разработчики, которым нравится быть инженерами, они за новые технологии, за трудные задачи, за развитие в профессии, за самообразование и образование коллег по цеху.
Когда разработчик становится техлидом, он будет решать следующие задачи:
- выбирает технический стек для конкретных проектов и/или задач
- рекомендует и внедряет новые подходы к разработке, тестированию, поставке инкремента
- выстраивает технические процессы в компании (например, CI/CD, код ревью), внедряет и развивает современные инженерные практики.
- работает с минимизацией рисков для продукта, связанных с техническими ограничениям, помогает преодолеть технические блокеры для бизнеса.
- разрабатывает технологическую стратегию развития проекта или продукта, работает на перспективу.
- управляет качеством реализации продукта.
- отвечает за развитие технических навыков команды.
ищет решение технически сложных задач, которые не могут найти другие инженеры команды, по крайней мере быстро.
Особенности работы техлида, к которым придется привыкнуть:
- сложность задач, с некоторыми проблемами еще никто не сталкивался или сталкивался косвенно
- ответственность не только за свою работу, но и за работу всей команды
- необходимость постоянного развития. Постоянного, буквально несколько часов каждый день для изучения нового
- постоянное ощущение, что можно было лучше
- глубокое погружение в доменную область
- умение отстаивать свою точку зрения, но не “зашоривать” взгляд, смотреть на проблему с разных сторон
- необходимость прокачивать менеджерские скиллы. Как для повышения индивидуальной эффективности (тайм-менеджмент, планирование, целеполагание), так и повышения эффективности всей команды (менторинг, мотивация).
Техлид — это самый технически подкованный и проактивный инженер в команде, которому важно то, что он делает и как это делает, не боится сложных задач, готов к вызовам, в то же время умеет признавать ошибки и не фиксироваться на неудачах. Инициативный, эффективный, ответственный, с широким кругозором и системным мышлением — это все техлид. Важен также авторитет в команде и понимание построения бизнес-процессов.
Хороший сеньор может стать техлидом, если он командный игрок, мыслит шире поставленной задачи и может отвечать за развитие всей команды, в целом.
С другой стороны хороший сеньор может и не хотеть становиться техлидом и брать на себя дополнительную ответственность за всю команду. В этом и есть главное отличие техлида от сеньора: сеньор отвечает за свою работу, техлид отвечает за работу всей команды.
В чем отличие техлида от архитектора? Архитектор занимается более высокоуровневыми задачами — проектирует архитектуру проекта, занимается вопросами интеграции и эволюции проекта, а техлид думает, как технически реализовать все то, что напридумывал архитектор. Частично эти роли могут накладываться, в маленьких компаниях техлиду приходится выполнять функции и архитектора тоже.
Зарплатная вилка техлида в Беларуси находится в пределах от 700 до 1000 долларов, медианное значение на уровне 3800 долларов (по данным https://salaries.dev.by/).
Смотрите примеры вакансий в карусели, обратите внимание на требования к кандидатам — кому то нужно знание принципов Agile, а кому-то опыт работы с фреймворками для тестирования.
Кто такой тимлид (он же Lead)
Как устроена работа человека, которого слушают даже сеньоры.
Послушать аудиоверсию этой статьи (7 минут):
Когда мы говорили про сеньоров, то сказали, что один из вариантов их профессионального развития — стать тимлидом. Это самый важный человек в команде.
Чем тимлид отличается от сеньора и других программистов
Вы уже знаете, что джуниоры занимаются простыми вещами, мидлы пишут код, а сеньоры, кроме этого, думают над архитектурой и проектом в целом. Но чтобы все эти люди шли к общей цели, ими нужно руководить.
Тимлид (teamlead) — руководитель команды разработчиков. Он уже не пишет код своими руками и не думает над тем, как реализовать ту или иную функцию. Вместо этого он занимается распределением нагрузки на команду, следит за ходом проекта и берёт на себя ответственность за проект в целом.
Тимлид — это высококвалифицированный программист, который знает, как управлять другими программистами.
Зачем нужны тимлиды
Представьте такую ситуацию: в компанию программистов приходит заказчик и просит разработать мобильное приложение. Сеньор начинает планировать архитектуру, мидлы пишут код, а джуниоры прикручивают кнопки в интерфейсах.
Некоторое время спустя заказчик видит, что каждый занимается своим делом, но целого продукта нет — есть отдельные части, которые работают, но половины функций нет, а те, что есть, работают не так, как нужно.
Тимлиды нужны как раз для того, чтобы таких ситуаций не возникало. Для этого тимлид делает свою руководительскую работу:
- встречается с заказчиком и обсуждает все детали проекта;
- сам оценивает ход и сроки каждого этапа работ;
- понимает, что нужно сделать в первую очередь, а от чего пока можно отказаться;
- разбивает задачи на этапы, а этапы — на спринты (про них мы расскажем подробнее в отдельной статье);
- распределяет нагрузку среди программистов;
- смотрит за тем, как продвигается задача;
- оценивает код и даёт рекомендации;
- чтобы не терять квалификацию — тоже пишет часть кода, если у него есть на это время, но это необязательно;
- согласует с заказчиком выполненную работу;
- работает дипломатом и следит за настроением в коллективе.
Как им стать
Как правило, тимлиды — это бывшие сеньоры.
Джуниор или мидл не смогут стать настоящими тимлидами, потому что у них не хватит квалификации оценить проект в целом и сеньоры не будут воспринимать их всерьёз. Иногда тимлидами назначают простых менеджеров, чтобы они работали с клиентом, но это тоже ошибка — такой менеджер не сможет правильно оценить объём работ и грамотно распределить задачи в команде. Чтобы стать тимлидом, нужен большой опыт в разработке и решении архитектурных задач — а этим как раз и занимаются сеньоры.
Но не из каждого сеньора получится отличный тимлид. Всё дело в управленческих навыках, которые есть не у каждого программиста. Даже если взять первоклассного сеньора, далеко не факт, что он будет так же эффективно управлять всей командой, как пишет свой код.
Кроме своей области программирования тимлид должен знать и уметь:
- планировать задачи,
- принимать управленческие решения,
- нанимать новых программистов,
- вести переговоры и искать наилучшее решение,
- писать технической документации,
- вершить код-ревью,
- решать конфликты с заказчиком и внутри команды,
- контролировать ход проекта и отвечать за него.
Короче, тимлид — это менеджер, который в совершенстве знает стек программирования своей команды.
Сколько зарабатывает тимлид
Мы посмотрели зарплаты тимлидов в разных направлениях на начало 2020 года и вот что выяснили:
Разработка мобильных приложений — 228 тысяч.
Что дальше
А дальше всё зависит от того, насколько тимлиду нравятся функции менеджера. Если ему больше нравится управлять, чем программировать, то из него может получиться хороший продакт-менеджер. О том, кто это такой — в следующий раз.
Курсы по программированию с нуля
Приходите к нам в ИТ. У нас есть удаленная работа, высокие зарплаты и удобное обучение в «Яндекс Практикуме». Старт бесплатно.
Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
От джуна до тимлида: разряды программистов
Мы решили разобраться, в чём разница между junior, middle и senior разработчиками и рассказать, кто такой team leader. А также как происходят переходы между этими уровнями и как ИТ-разряды влияют на карьеру. Мы не будем говорить о росте зарплат: финансовая мотивация не может быть единственной причиной для профессионального развития.
Junior
Самый простой, но неточный способ обозначить специалиста как джуна — это сослаться на количество лет опыта. Правильнее определять уровень разработчика по его техническим компетенциям и степени самостоятельности в выполнении поставленных задач. Джун — это разработчик, который ещё не может справляться без сторонней помощи. У него мало знаний и много вопросов. Поэтому каждому джуну нужен или хороший наставник-тимлид, или работа в сильной команде. Обычно, этот этап целеустремлённый специалист проходит за один-два года, но бывают примеры, когда человек не хочет расти и зависает в этой позиции на пять-десять лет.
Middle
Мидл может работать самостоятельно. И если в процессе у него возникают вопросы, то он разбирается с ними сам. Он быстро понимает поставленные задачи, знает, сколько времени у него занимает выполнение тех или иных целей, и владеет своей сферой ответственности. Специалист такого уровня способен принимать решения по реализации, учитывать технические нюансы и может адекватно обозначить свои цели в ходе работы над проектом.
Если ты видишь себя в будущем тимлидом или сильным разработчиком, нужно помнить, что все профессионалы начинали с позиции джуна, а дальше развивались в выбранном направлении и упорно шли к цели. Во многих компаниях переход между уровнями производится после аттестации. Специалисты выполняют практические задачи, иногда проверяется владение теоретической базой. Но чаще всего это формальность, потому что профессиональный рост разработчика — непрерывный процесс обучения и практики.
ИТ-курсы с трудоустройством У нас ты обучишься востребованной профессии и получишь старт IT-карьеры. Программы курсов разработаны совместно с нашими IT-партнёрами. При успешном прохождении курса ты будешь рекомендован к нашему партнёру в команду! Записаться на пробное занятие
Спасибо, что дочитал до конца. Мы рады, что были полезны. Чтобы получить больше информации, посмотри ещё:
Не пропускай важные новости и подписывайся на наш YouTube, ВК, Instagram, Facebook и уведомления на adukar.by.
Если хотите разместить этот текст на своём сайте или в социальной сети, свяжись с нами по адресу info@adukar.by. Перепечатка материалов возможна только с письменного согласия редакции.