Продолжаем цикл статей о профессиях в отрасли IT. Сегодня говорим о тимлиде: кто это, чем занимается, сколько зарабатывает, как стать тимлидом и почему этот специалист — лучший друг джуниора.
- Кто такой тимлид и чем он занимается
- Где работают и сколько зарабатывают тимлиды
- Какие требования предъявляют работодатели к кандидатам на позицию тимлида
- Слово профессионалам: чем занимаются тимлиды, как вырасти до этой должности, зачем новичкам нужно плотно общаться с лидером команды
- Заключение: вырасти можно, но джуниорам придётся запастись терпением
Кто такой тимлид и чем он занимается
Слово «тимлид» произошло от английского team leader или team lead — лидер команды. Этот специалист координирует деятельность команды разработчиков, распределяет сферы ответственности, взаимодействует с заказчиком, планирует и организует обучение специалистов.
Обратите внимание, тимлид — не профессия, а должность. Лидерами команд разработчиков становятся программисты-разработчики. В данном случае программист — профессия, а тимлидер — должность.
Связь с заказчиком и организация разработки в интересах бизнеса
Содержание этого пункта зависит от конкретной организации и даже от конкретной команды. Если обобщать, тимлидер помогает команде разработки решать поставленные задачи. Этот специалист одновременно разрабатывает сам и занимается управлением.
Тимлид — одновременно опытный программист и хороший менеджер.
Как отмечалось выше, лидер команды играет роль связующего звена между заказчиком и разработчиками. Под заказчиком в данном случае подразумевается владелец бизнеса и топ-менеджеры в продуктовых компаниях или представители клиента в заказной разработке.
Тимлид организует работу команды с учётом интересов и приоритетов заказчика, обеспечивает соответствие продукта интересам бизнеса, следит за эффективностью команды в контексте бизнес-процессов. Здесь сфера ответственности тимлида как минимум частично пересекается со сферой ответственности проектного менеджера.
- Освойте азы современных языков программирования
- Изучите работу с Git и командной строкой
- Выберите себе профессию или улучшите навыки
HR-процессы: наём, адаптация и обучение сотрудников
Тимлиды участвуют в HR-процессах: найме, адаптации и обучении сотрудников. Лидер планирует кадровые потребности команды вместе с HR-специалистами и руководителями. Тимлиды проводят собеседования и участвуют в них.
Конкретная роль тимлидера в найме зависит от масштабов компании. В небольшой организации этот специалист может заниматься наймом полностью самостоятельно: искать кандидатов, проводить первичные и технические собеседования и так далее. В крупных организациях первичный отбор берут на себя эйчары, а team lead подключается на этапе технических собеседований.
Тимлид организует онбординг нового сотрудника. Он знакомит новичков с проектом, кодом, инструментами и принятыми стандартами. Лидер команды помогает джуниору понять бизнес-процессы и роль разработчика в них. В больших компаниях и командах team lead привлекает к онбордингу новичков других разработчиков.
Обучение сотрудников — ещё одна сфера ответственности лидера команды. Тимлид планирует развитие новичков и опытных специалистов, следит за их прогрессом. Лидер обеспечивает профессиональное соответствие команды в целом и её отдельных членов потребностям бизнеса.
Обратите внимание, сфера ответственности тимлида не ограничивается хард-скилами. Хороший лидер уделяет внимание развитию мягких навыков членов команды.
Читайте также Интервью тимлида Evrone Дмитрия Матвеева. Дмитрий рассказывает о своём рабочем распорядке, сферах ответственности, требованиях к джуниору и других интересных вещах.
Разработка: координация команды и помощь сотрудникам
Тимлидер не фокусируется исключительно на управленческой деятельности. Он остаётся практикующим разработчиком, который знает код проекта, участвует в работе над ним. Как отмечалось выше, team lead обеспечивает соответствие продукта целям заказчика. Для этого он координирует деятельность команды, участвует в разработке, в том числе пишет код, если хочет и успевает.
Тимлиды помогают выполнять задачи другим членам команды. Этот пункт реализуется разными способами: от обсуждения кода на общих митингах до индивидуальных бесед, код-ревью, парного программирования и так далее.
Теперь вы знаете, почему новичкам важно найти общий язык с тимлидом: от эффективности взаимодействия с этим человеком зависит, как джуниор адаптируется в коллективе и сможет ли он развиваться и прогрессировать.
Промежуточный итог: team lead работает на стыке разработки и менеджмента. Он обеспечивает взаимодействие команды с заказчиком, участвует в HR-процессах. Лидер команды координирует работу программистов, помогает им решать задачи. Он сам участвует в разработке.
Где работают и сколько зарабатывают тимлиды
Формально должность тимлида есть не во всех IT-компаниях. Тем не менее практически в каждой команде есть сотрудник, который играет роль лидера. В зависимости от масштабов и внутренней структуры организации, это может быть самый опытный разработчик, руководитель отдела, даже технический директор или CEO в небольших стартапах.
В больших компаниях разработчики объединяются в несколько команд. В каждой команде может быть формальная должность тимлидера. В компаниях с большим количеством команд может работать формальный или неформальный тимлид тимлидов. Этот человек руководит лидерами команд.
По состоянию на конец февраля 2020 года на hh.ru тимлидов ищут как крупные и известные компании, так и небольшие региональные организации. Вот несколько компаний, которые публиковали объявления о поиске лидеров команд:
- Mindbox.
- Эквид.
- BeeJee.
- Carbon Soft.
- BestDoctor.
В конце февраля работодатели предлагают тимлидам от 160 000 до 340 000 рублей в месяц. На hh.ru в большей части вакансий для лидеров команд зарплата не указана.
Промежуточные итоги: тимлидеры нужны работодателям разного масштаба: от крупных компаний в Москве и Санкт-Петербурге до небольших организаций в регионах.
Какие требования предъявляют работодатели к кандидатам на позицию тимлида
В этом разделе пойдёт речь о хард- и софт-скилах, которыми должен обладать кандидат на должность лидера команды. Как вы помните, team lead работает на стыке разработки и менеджмента. Поэтому он должен хорошо разбираться в своём стэке, быть опытным программистом. Также лидер команды должен быть хорошим управленцем.
Вот обобщённые требования к кандидатам на позиции тимлида. Они составлены по итогам анализа опубликованных на hh.ru вакансий:
- сильная экспертиза в своём стэке;
- опыт работы от 5 лет, но одна из компаний рассматривает кандидатов с опытом от 3 лет;
- опыт работы на руководящих позициях;
- опыт менторинга, проведения код-ревью;
- в нескольких вакансиях работодатели называют преимуществом высшее техническое образование.
Практически во всех вакансиях упоминаются софт-скилы. Чаще всего встречается требование уметь общаться и организовывать коммуникации между членами команды. Вот другие софт-скилы, которые должны быть у кандидатов:
- умение принимать решения;
- умение обучать;
- аналитические способности;
- способность мотивировать сотрудников;
- критическое мышление.
Промежуточный итог: работодатели видят на позиции team lead специалиста с сильной экспертизой в своём стэке. Также кандидат должен иметь опыт управления и мягкие навыки, необходимые для руководства командой.
Составьте свое первое резюме: Вы можете бесплатно опубликовать свое резюме в нашем сервисе «Хекслет-CV» и получить советы по его улучшению от разработчиков и HR-менеджеров
Слово профессионалам: чем занимаются тимлиды, как вырасти до этой должности, зачем новичкам нужно плотно общаться с лидером команды
Попросили действующих тимлидеров рассказать об особенностях работы, карьерном росте и взаимодействии с командой.
Александр Шакун: начинающему в целом стоит стремиться быть «самым глупым в комнате»
О собеседнике: Александр Шакун, team Lead в osome.com, двигаю кнопки в стартапах с 2016 года.
Дмитрий Дементий: Какую роль в профессиональной жизни начинающего разработчика играет тимлид? Или перефразирую: почему стажёру или джуниору надо плотно общаться и дружить в профессиональном плане с тимлидом?
Александр Шакун: Не уверен, что могу тут поделиться каким-то уникальным опытом, я никогда не был тимлидом в командах с начинающими разработчиками. Думаю что начинающему в целом стоит стремиться быть «самым глупым в комнате» и общаться со всеми, кто рядом, набираться опыта.
Свою задачу вижу в том, чтобы стать максимально ненужным. Буду считать свою миссию выполненной, когда все члены команды будут достаточно прокачаны, чтобы:
- сделать любую задачу в предсказуемый срок;
- провести и эффективно поучаствовать в любом ивенте (ретро, демо, дейли, whatever);
- эффективно ответить на любой вопрос о продукте со стороны других команд;
- придерживаться общих ценностей.
Конечно для тимлида к этому добавляется некоторое количество административных обязанностей, таких как наём и мотивация, эти вещи остаются на мне.
Д. Д.: Как разработчики вырастают до должности тимлида: что они изучают, что делают для того, чтобы достигнуть этой карьерной ступени?
А. Ш.: Понятия не имею, никогда к этому не стремился. Пришёл на новую работу, начал делать задачки. Формировалась команда под новый продукт, меня определили в неё. Надо было работать много, быстро и качественно. У меня получалось.
Моё поведение, моё представление о работе не меняется в зависимости от того, тимлид я или нет. Стараюсь делать задачи быстро, не жертвуя при этом качеством. Стараюсь интересоваться продуктом: что, зачем и для кого мы делаем. Готов работать на любой части проекта, где нужен. Ладно, лендосы, пожалуй, верстать не готов.
Д. Д.: Должность тимлида кому-то подходит, кому-то не подходит. Как человеку понять, что в будущем из него получится хороший тимлид, и что можно и нужно стремиться к этой роли?
А. Ш.: Тут я сошлюсь на опыт своих гораздо более опытных знакомых, занимавших позиции тимлидов и руководителей разработки. Важно иметь эмпатию, балансировать между качеством технической реализации и скоростью поставки продуктовых фич, уделять внимание членам команды, их желаниям, помогать их развитию. И в тоже время вовремя расстаться тоже важно.
Д. Д.: Тимлид нужен в любой команде, или где-то можно обойтись без этого специалиста? Возможно, роль тимлида может сыграть какой-то другой сотрудник?
А. Ш.: В идеале здорово, когда члены команды одинаково сильно вовлечены и помогают компании двигаться вперед. Зачастую так не бывает, у людей могут быть разные интересы и разные стремления. Это нормально. В такой ситуации полезно, когда есть человек, который собирает разрозненные мнения воедино, помогает команде сфокусироваться и достичь цели. Может быть, его назовут тимлидом, может быть нет :-)
Д. Д.: Тимлид — больше менеджер-организатор или разработчик с глубокой экспертизой? На что больше тратит времени тимлид: на работу с кодом или общение с другими программистами?
А. Ш.: Я думаю, что нет универсального ответа. В разные этапы развития команды тимлид может быть и разработчиком, и организатором, и арбитром, и проводником в разных соотношениях.
Д. Д.: Есть ли у вас как у тимлидера пожелания к будущим джуниорам или советы? Каким должен быть джун, чтобы вы его взяли на работу?
А. Ш.: Мы не нанимаем джунов, так что на второй вопрос не могу ответить. Что касается советов, то я тут не открою никаких тайн. Будьте готовы много работать, будьте готовы брать на себя ответственность, умейте радоваться победам и делать выводы из поражений :-)
Виталий Прокурат: у джуна в первую очередь должен быть интерес к работе
О собеседнике: Прокурат Виталий, team Lead в Минском центре разработки компании Wargaming. Больше 10 лет опыта в веб-разработке.
Дмитрий Дементий: Какую роль в профессиональной жизни начинающего разработчика играет тимлид? Или перефразирую: почему стажёру или джуниору надо плотно общаться и дружить в профессиональном плане с тимлидом?
Виталий Прокурат: Тимлид в жизни начинающего разработчика играет роль ментора. Следит за уровнем сложности задач с которыми работает джун. Даёт своевременную обратную связь об успехах или неудачах. Помогает джуну разобраться с рабочими вопросами. Советует, какую литературу почитать: книги или ссылки на статьи по профильной теме.
Интерес тимлида в том, чтобы джун как можно быстрее разобрался в проекте и вышел на приемлемый уровень задач, которые он может делать самостоятельно. Это может быть баг-фикс, какие-то инфраструктурные задачи, связанные с мониторингом приложения или логированием. Также уверенная работа над задачами, в которых хорошо проработаны требования и понятно, что делать.
При взаимодействии с тимлидом начинающему разработчику стоит также давать обратную связь: сообщать, что у него получается хорошо, а что не очень. Какого типа задачи нравятся больше. Это общение позволит джуну быстрее развиваться и быстрее закрывать пробелы в знаниях, а тимлиду позволит быстрее ориентироваться в том, как построить процесс обучения и развития.
На самом деле, взаимодействие с тимлидом полезно не только начинающим разработчикам, но и разработчикам уровня middle и senior.
Д. Д.: Как разработчики вырастают до должности тимлида: что они изучают, что делают для того, чтобы достигнуть этой карьерной ступени?
В. П.: Для того, чтобы стать тимлидом, разработчику нужно развить в себе менеджерскую оставляющую. Научиться часто переключаться с одной задачи на другую. Научиться распределять и планировать свое время. Уметь просто «на пальцах» объяснить, как работает та или иная функциональность.
Сейчас существует большое количество тренингов. По people-менеджменту, тайм-менеджменту, стресс-менеджменту, конфликт-менеджменту и прочие. Разработчику нужно прикинуть свои сильные и слабые стороны и посетить какой-либо тренинг. Как правило, это занимает не так много времени: в среднем от одного до нескольких дней. В некоторых компаниях, особенно в крупных, есть обучение и развитие сотрудников. Рекомендую им воспользоваться.
Могут помочь не только тренинги, но и профильные конференции. Нужно посмотреть несколько топовых докладов с конференции TeamLeadConf, чтобы иметь представление, с чем придётся столкнуться на позиции тимлида.
Д. Д.: Должность тимлида кому-то подходит, кому-то не подходит. Как человеку понять, что в будущем из него получится хороший тимлид, и что можно и нужно стремиться к этой роли?
В. П.: На самом деле, нужно просто пробовать. На текущей позиции стараться брать на себя больше ответственности, начинать вести задачи «под ключ». Это когда разработчик сопровождает задачу через все этапы. Анализ требований, проработка решения, разработка (написание кода), тестирование и релиз. Проделав несколько таких упражнений, нужно запросить обратную связь от коллег, от руководителя и менеджера проекта.
Вопросы которые могут в этом помочь:
- Всем ли было понятно, что и в какой последовательности нужно делать?
- Был ли прозрачен процесс разработки?
- Были ли какие-то подводные камни, которые не запланировали заранее?
- Как участники оценивают результат?
- Как участники/руководитель/менеджер оценивают работу разработчика в роли лида по этой задаче?
Если отзывы положительные, всё хорошо. Может быть несколько отзывов, по которым можно понять, что нужно улучшать. Также разработчик на этом этапе может сам понять, подходит для него такая работа или нет.
Я сторонник постепенного погружения в новую роль. Когда легко можно вернуться обратно, если не получается или не нравится. Думаю, что «внезапные» назначения на роль тимлида разработчика, который к этому не готов, случаются очень редко.
Д. Д.: Тимлид нужен в любой команде, или где-то можно обойтись без этого специалиста? Возможно, роль тимлида может сыграть какой-то другой сотрудник?
В. П.: Я думаю, что в маленьких командах можно обойтись без выделенной должности тимлида. К примеру в команде из двух разработчиков и одного тестировщика. В этом случае один из двух разработчиков будет старшим разработчиком, и на него ляжет ответственность по принятию решений.
В команде, где три и более разработчиков, я считаю, нужен тимлид.
Д. Д.: Тимлид — больше менеджер-организатор или разработчик с глубокой экспертизой? На что больше тратит времени тимлид: на работу с кодом или общение с другими программистами?
В. П.: Большая часть времени уходит на общение с другими разработчиками:
- обсуждение рабочих вопросов по текущим задачам и code review внутри команды;
- митинги с разработчиками из других команд по обсуждению совместных задач;
- работа с бэклогом и приоритизация задач.
Времени писать полноценный код нет, иногда есть возможность сделать какой-то прототип или исправить найденный баг.
Все же я считаю, что тимлид ближе к разработчику с глубокой экспертизой. Так как каждый день приходится сталкиваться с техническими вопросами, взвешивать варианты решения и выбирать, какой из них подойдет лучше. Следить за тем, чтобы в команде использовались одинаковые подходы для решения типовых задач. Есть конечно и менеджерские функции, но их меньше.
Д. Д.: Есть ли у вас как у тимлидера пожелания к будущим джуниорам или советы? Каким должен быть джун, чтобы вы его взяли на работу?
В. П.: Так как мы говорим о джуне, то ожидать наличие опыта работы и хороших знаний в предметной области не стоит. У джуна в первую очередь должен быть интерес к работе. Он должен хотеть научиться чему-то новому. При наличии этих двух качеств можно брать кандидата.
Многие компании проводят различного рода курсы или стажировки для новичков. Для компании это хороший способ отбора кандидатов. Так как есть несколько месяцев, на протяжении которых сотрудники компании работают с новичками и могут выбрать из группы тех, кто наиболее подходит. Новичкам же следует подготовится к таким курсам. Почитать теорию, попробовать что-то сделать самостоятельно, какой-то домашний проект. Это всегда будет плюсом как на собеседовании, так и при отборе на курсы.
Заключение: вырасти можно, но джуниорам придётся запастись терпением
Позицию тимлида занимают опытные разработчики, которые умеют управлять командами. Эта должность предполагает работу на стыке программирования и менеджмента. Если хотите дорасти до должности лидера команды, прокачивайте хард- и софт-скилы, учитесь общаться с другими сотрудниками, погружайтесь в бизнес-процессы и старайтесь разбираться в продуктах, над которыми работаете.
- Освойте азы современных языков программирования
- Изучите работу с Git и командной строкой
- Выберите себе профессию или улучшите навыки