Тимлиды бывают разными. Иногда очень неожиданными

65d96dde5ed1c551a53d13812c1848d2

Что делает тимлид? Руководит командой? Делегирует задачи? Пишет код? Отвечает перед заказчиком? В книгах всё чётко: тимлид — это лидер, вдохновляющий команду и ведущий её к успеху.

В жизни всё немного иначе. Одни тимлиды тянут весь проект на себе и не доверяют никому. Другие ходят по митингам и в коде не разбираются. А кто-то просто оказался тимлидом случайно.

За годы работы я встречал самых разных тимлидов. Со временем у меня сложилась своя классификация. Возможно, у вас был другой опыт — расскажите, узнаёте ли вы здесь кого-то?

Конечно, идеального тимлида не существует. Всё зависит от компании, команды, культуры и задач. Но наблюдая за разными проектами, я заметил, что тимлиды часто оказываются в одной из семи ролей.

Это не жёсткая классификация, а скорее заметки по мотивам реальных ситуаций. Возможно, вы узнаете кого-то из коллег или даже себя. Поехали!

Тип первый — Бриллиант

Этот тимлид буквально держит весь код в своих руках. Он не просто пишет ключевые части проекта — он переписывает всё, что написали другие, доводя до идеала. Руководство в нём души не чает: он знает всё, делает всё и несёт личную ответственность за продукт.

Но его влияние не ограничивается кодом. «Бриллиант» — это не просто лучший разработчик в команде, а единая точка контроля для всего проекта. Он общается с заказчиком напрямую, разбирается в требованиях, принимает решения и сразу же превращает их в код. Весь процесс — от первых обсуждений до финального результата — проходит через него.

Такой тимлид живёт проектом. Он работает с утра до ночи, в курсе каждого изменения, а уровень кода команды считает… ну, скажем так, не идеальным. Всё, что пишут остальные, пройдёт через его руки и будет переписано. А значит, у владельца компании есть с кого спросить результат.

В чём проблема?

Проект становится зависим от одного человека. Если «Бриллиант» уходит, вместе с ним уходит и понимание кода. Команда не вовлечена, передача знаний усложняется, и новый разработчик, глядя на этот «совершенный» код, скорее проклянёт жизнь, чем быстро разберётся.

Сам «Бриллиант» тоже заложник своей роли. Руководство его ценит, но двигать по карьерной лестнице не готово — он же незаменимый. И получается, что, оставаясь лучшим из лучших, он невидимо ограничивает свой рост.

Тип второй — Очень хороший старший разработчик

Этот тимлид не руководит, а делает. Он самый опытный разработчик в команде, глубже всех понимает проект и лучше всех пишет код. Часто он дольше других работает на этом продукте, либо просто разобрался в нём быстрее всех.

Главная особенность — он не управляет командой, но из-за своих навыков и опыта фактически становится её центром. Он пишет основной функционал, отвечает на вопросы, даёт советы, оценивает сроки и предлагает решения. Но при этом его взаимодействие с заказчиком сведено к минимуму, а развитием команды он почти не занимается.

Может сложиться впечатление, что он делает всё сам, а остальные — просто ассистенты. На практике это не так, но именно его компетенция во многом определяет успех проекта.

В чём проблема?

Он не управляет процессом, но всё замыкается на нём. Если такой тимлид уйдёт, команда может оказаться в растерянности. Проект не рухнет сразу, но появится вакуум — ведь именно он знал все нюансы, видел ошибки раньше других и был гарантом стабильности.

В отличие от «Бриллианта», он не переделывает код других, не берёт на себя весь цикл проекта и не становится «единственной точкой контроля». Но всё же компания от него сильно зависит, и его потеря может больно ударить по проекту.

Тип третий — Лицо для общения с внешним миром

Такой тимлид — это мост между командой и заказчиком. Он не всегда лучший программист, но лучше всех умеет говорить. Если компания работает с иностранными клиентами, то тимлидом часто становится тот, кто свободнее всех владеет английским.

Главная задача этого тимлида — донести требования заказчика до команды и обратно. В больших проектах, разбитых на множество команд, это особенно важно: без чёткого взаимодействия всё развалится. А значит, этот тимлид участвует во всех митингах, связанных с проектом, обсуждает детали, согласовывает изменения… и так проходит день за днём.

Что с кодом?

Чаще всего — почти ничего. Он не самый опытный разработчик и не погружается глубоко в проект. Иногда такой тимлид становится им просто потому, что он коммуникабелен и не слишком критичен для разработки. Опытные разработчики заняты кодом, и чтобы их не отвлекать, выбирают кого-то, кто может решать вопросы без ущерба для качества продукта.

В чём проблема?

Внутри команды этот тимлид не всегда воспринимается как лидер. Коллектив может существовать сам по себе, а настоящим техническим ориентиром станет «теневой лидер» — опытный разработчик, который просто избегает общения с заказчиком.

У этой роли немного плюсов для развития. Разработчики редко хотят идти в такие тимлиды, потому что общение — сплошной стресс, а влияние на код минимальное. А если заказчик «токсичный», работа превращается в бесконечный поток разбирательств и правок.

Тип четвёртый — Тот, кто доведёт проект до рабочего состояния

В любом сложном продукте рано или поздно накапливаются технические проблемы. Конфликты библиотек, неверные конфигурации, сложно воспроизводимые баги, недоработки, о которых вспомнили в последний момент, уязвимости в коде — всё это чаще всего присутствует. Иногда это результат технического долга, иногда — последствие работы менее опытных разработчиков. Но итог один: без исправления этих проблем проект ведет себя нестабильно.

Этот тимлид не всегда появляется в проекте внезапно — он может быть в нём с самого начала, но его роль становится особенно заметной, когда приближается релиз или когда нужно срочно чинить критические баги. Он не управляет командой, но он тот, кто разбирается в технических завалах и доводит продукт до состояния «работает».

Что он делает?

Он умеет программировать на нескольких языках, разбирается в конфигурациях, инфраструктуре, настройках окружения, тестировании, сборках. Он подчищает всё, что не успели или не смогли сделать другие. Иногда его задача — разгрести код, который писали менее опытные разработчики, иногда — разобраться с устаревшими библиотеками, которые внезапно начали ломать прод.

Почему заказчик хочет видеть именно тимлида?

Когда проект упирается в такие проблемы, заказчик не хочет слушать про сложности, дедлайны и чужие ошибки. Ему нужен человек, который разберётся и скажет, когда всё будет исправлено. Поэтому на этой позиции чаще всего тимлид — не потому что он управляет кем-то, а потому что у него достаточно экспертизы, чтобы гарантировать результат.

Команда?

Может быть, а может и нет. Иногда он работает в одиночку, потому что команда уже переключилась на новые задачи, а эти баги просто «зависли» и их некому довести до конца. В маленьких проектах он может быть единственным, кто реально понимает, как всё устроено.

В чём проблема?

Если такой тимлид работает в проекте долго, со временем он превращается в вечного «исправителя» багов. Чем лучше он справляется, тем больше таких задач ему отдают. В итоге он всегда занят исправлением различных косяков, и чем больше разработчиков приходит в проект, тем больше работы у него. Если он уходит, компания вдруг понимает, что «чистить завалы» больше некому.

Тип пятый — Тимлид 30 на 70

Это тимлид, который ещё пишет код, но уже не живёт им. Его время делится примерно так: 30% кодинга, 70% — управление, процессы, люди. Этот баланс может смещаться — у кого-то 20 на 80, у кого-то 40 на 60. Но суть одна: он уже не просто разработчик.

Иногда такой тимлид скатывается в какую-то крайность и начать раздражать команду.

  • Первый вариант такой «крайности» — пионервожатый. Он чисто формально ведёт команду, следит за процессами, проводит one-on-one. Но реально с его стороны ничего не делается.

  • Вариант второй — «представитель заказчика». Всё время проводит на митингах. С командой и кодом работает чисто формально.

Что он делает в разработке?

Он кодит мало, но участвует в ключевых моментах: код-ревью, архитектурные решения, сложные баги. Он может подключиться, если что-то идёт не так, но сам в фичах сидит всё реже.

Плюсы и минусы?

Такой тимлид сбалансирован, но баланс этот неустойчив.

  • Если он слишком увлечётся кодом — провалится в управлении.

  • Если уйдёт в управление слишком глубоко — оторвётся от технологий, провалится в коде

Какие сложности?

В моей практике такие команды часто сталкивались с проблемами мотивации, удержания сотрудников и конфликтами. Тимлид вроде бы везде, но не всегда понимает, как глубоко нужно вмешиваться. Где-то его недостаточно, где-то слишком много. Но при этом в нужных условиях этот подход может быть вполне эффективным.

Тип шестой — Тимлид, который практически не пишет код

Этот тимлид не сидит в коде, но это не значит, что он далёк от разработки. Чаще всего он ведёт крупные проекты, в которых слишком много людей, процессов и задач, чтобы уделять время программированию.

Возможно, когда-то он писал код наравне со всеми, но по мере роста проекта время на это стало не хватать. Теперь его работа — не строки кода, а люди. Он просматривает код, участвует в архитектурных решениях, но сам не пишет фичи и не занимается багами.

Чем он занимается?

  • Формирует сильную и автономную команду.

  • Вводит новых сотрудников в проект, «растит» специалистов.

  • Помогает разработчикам развиваться и принимать правильные решения.

  • Разбирает сложные ситуации, решает конфликты.

  • Если в проекте нет PM, может частично закрывать и эту роль.

В чём плюс?

Такие тимлиды делают команды устойчивыми. Проект не завязан на одном человеке, люди чувствуют поддержку, но при этом растут и берут на себя ответственность. В долгосрочной перспективе это делает продукт сильнее и стабильнее.

В чём риск?

Чем больше тимлид занимается управлением, тем больше отрывается от технической части. В какой-то момент он теряет актуальные знания, и тогда команда начинает видеть в нём не разработчика, а просто менеджера. А если он уйдёт, компания может столкнуться с тем, что не успела вырастить людей, которые смогут его заменить.

Тип седьмой — Тимлид больше, чем тимлид

Иногда тимлид это не просто тимлид. В некоторых компаниях один человек может руководить сразу несколькими командами, каждая из которых работает над своим проектом. Формально он тот же самый тимлид, но его задачи уже давно выходят за рамки этой роли.

Что он делает?

  • Следит за качеством кода и общими стандартами во всех командах.

  • Выстраивает межкомандное взаимодействие.

  • Контролирует выполнение задач и соблюдение сроков.

  • Влияет на подходы к управлению в разных проектах.

По сути, это уже руководитель тимлидов или юнитлид. Но в штатном расписании он по-прежнему просто тимлид, и его формальная должность не отражает реальный объём его обязанностей.

В чём сложность?

Когда у тебя в подчинении одна команда — ты знаешь, что в ней происходит. Когда две или три — начинаешь управлять на уровне системных решений. Но чем больше команд, тем сложнее держать руку на пульсе и действительно понимать, что происходит на местах.

Можно ли эффективно управлять несколькими командами одновременно? Вопрос спорный. Иногда это работает, особенно если команды самостоятельны и сильны. Но если процессы не выстроены, тимлид оказывается разорван между задачами, а команды в итоге начинают жить своей жизнью.

Заключение

Тимлид — это не шаблонная роль с чёткими границами, а скорее живая система, которая подстраивается под реалии проекта. Иногда тимлид — главный кодер, иногда дипломированный переговорщик, а иногда тот, кто тихо закрывает чужие баги по ночам.

У одних тимлидов вся команда держится на одном человеке, у других — никто не замечает их работы, потому что всё просто работает. Вопрос не в том, какой тип «правильный», а в том, какой из них действительно помогает команде и проекту двигаться вперёд.

А какие тимлиды встречались вам?

© Habrahabr.ru