Данную статью меня побудил написать тот скрытый и для каждого свой смысл должности/роли Team Leader. Многие хотят им стать, многим интересно что там, "под капотом", работы в этой должности. Поэтому кому интересно узнать еще одно мнение об этом всем безобразии, то прошу под кат.
По мере своего погружения в мир IT, я, наверное как и многие, размышлял и параллельно шел по пути своего развития примерно в следующем ключе:
- Вот я Junior...
- Надо фигачить код и вообще изучать все как можно больше
- Хм… но надо бы получше да поглубже понять “базу”
- Изучил вроде “базу”, ага, вот и новый инструмент/фреймворк/библиотека/подход — надо срочно применять это в проекте и вообще переписать все
- Рефакторинг, рефакторинг и еще...
- Так надо понимать какую задачу решаем...
- И напилить свое решение, ведь я могу-умею !
- Вот я Middle
- Так есть нюансы и тут и там, задача про одно вроде бы, а оно выходит про другое если разобраться...
- А вообще-то можно и переиспользовать что-то, зачем с нуля то писать
- Вон у меня сколько наработок уже
- Рефакторинг, рефакторинг и еще...
- А вообще-то уже есть решенные давно задачи и под них проверенные временем инструменты/фреймворки/библиотеки/подходы
- Ну и как бы клиенту хорошо бы объяснить что так не надо, а так вот надо
- Вот я Senior
- Безопасность кода, многопоточность, сложность алгоритмов, CAP теорема (сделай свой выбор...), графы… графы, масштабирование и высокие нагрузки, инвалидация кэша (чтоб ее), AWS,Azure,GCE, SQL vs NoSQL (ну уже понимаем — какую задачу решаем от того и..), второй+ язык программирования (другие парадигмы полезны) и.т.д
- Ну и что, что долго, зато бизнес выиграет от этой реализации столько-то
- Ну и что что не по фен шую, зато быстро и бизнес выиграет от этой реализации столько-то
- Так, ну надо в Team Leader-ы двигаться же, ведь там я буду...
Вот. И что я там буду то? Что делает TL?
Стоп. Спокойно, вообще-то, люди говорят такое:
- “TL вот знает как надо в техническом плане лучше других”. Хм… а кто тогда такой Senior ?
- “TL проектирует архитектуру проектов/продуктов и вообще у него есть вИдение проекта в целом”. Хм… а кто тогда такой Архитектор ?
- “TL же распределить может задачи по проекту/проектам и контролировать их выполнение и все такое”. Хм… а кто тогда такой PM ?
- “TL разрабатывает стратегию команды/отдела, мотивирует команду, создает настрой и задает эмоциональный фон команды, договаривается о конференциях с руководством и.т.д”. Хм… а кто тогда такой руководитель отдела ?
Это список конечно можно и продолжать, но думаю вы понимаете куда я клоню.
Плюс к этому все что я слышал от действующих TL, так это в целом что-то такое:
- “Ну да, я уже пишу код только 60-70% времени, потому что еще дела отдела всякие...”
- “Ага, почти вообще не прогаю, надо там проконтролировать, тут договорится, там помочь...”
- “Пишу код 10-15% времени, остальное это подготовка к ивентам и конференциям, по верхам изучаю новые темы, так сказать вширь росту короче, плюс надо всякими согласованиями заниматься, вроде отпусков, работы из дома и.т.д”
И этот список можно продолжать, но суть думаю также ясна.
Итого, выходит так, что TL как то занимается всем понемногу, но при этом четкого движения в какую-то сторону и нет. Оттачивание навыков в какой-то специализации или технологии также не происходит, но при этом расфокусировка и неизбежно сопровождающий ее стресс явно должен присутствовать при таком положении дел.
Отсюда получается что TL:
- Не Архитектор (мало времени уделяется теме проектирования, изучению построения инфраструктуры проекта/проектов, применению облаков и различных сервисов и инструментов и.т.д)
- Не PM (мало или вообще нет, общения с клиентами/заказчиками, ответственности за сроки, качество продукта/проекта и бюджет)
- Не Senior разработчик (мало времени уделяется написанию кода, погружению в технические глубины и “оттачиванию мастерства”)
- Не Руководитель отдела (так как над ним, обычно уже есть такой, а если и нет, то почти всегда TL сам не может ни увольнять, ни принимать, ни увеличивать/уменьшать (о ужас) зарплату, ни самолично принимать стратегические решения влияющие на бизнес компании и.т.д)
Мда… картина не очень как то. Но я не жаловаться тут собираюсь, а наоборот, рассуждая прийти к некому решению (хочется в это верить).
Итак, до этого я рассуждал о TL со стороны разработчика, который движется к коммунизму к светлой и прекрасной должности/роли TL, а теперь давайте посмотрим на это газами собственника бизнеса.
(!) Все события и герои вымышлены. Любые совпадения с реальными личностями случайны.
Итак, у собственника бизнеса есть прекрасный Senior разработчик — Евпсихий, который:
- делает Х фич в единицу времени, без багов (ух ты!)
- или делает Х, оплачиваемых заказчиком, часов в единицу времени (актуально для аутсорса)
Но вот Евпсихий принял решения двигаться дальше (так он думал) в TL, ведь это тот самый путь самурая, ведущий к просветлению! (да, так он думал).
Собственник — Акакий, не желая потерять такого комсомольца, спортсмена и просто хорошего специалиста, награждает Евпсихия должностью Team Leader-а и делает официальное объявление по всей Компании.
Занавес.
Евпсихий счастлив и горд, поэтому с радостью принимается за дела, в новом для себя и своих коллег, обличии.
Через какое-то непродолжительное время, собственник Акакий, просматривая очередные показатели в отчетах по компании видит следующую картину по TL Евпсихию, а именно тот теперь:
- делает Х-((от 10 до 100%)от X) фич в единицу времени и не всегда без багов (а раньше было без...)
- или делает Х-((от 10 до 100%)от X), оплачиваемых заказчиком, часов в единицу времени (а для аутсорса это прямое уменьшение дохода)
“Так...” — задумывается Акакий, и где-то в глубине своей предпринимательской души, уже начинает осознавать, что по части показателей так теперь будет продолжаться и дальше. И более того, TL Евпсихий, через +- пол годика нагрянет к нему с требованиями (даже не просьбами) о повышении уровня мотивации, размахивая аргументами о своей сверхзанятости и работой с людьми, и повышенным уровнем стресса и.т.д.
“?*&%#@” — говорит сам себе Акакий и прихватив папку с какими-то документами, под тяжестью пульсирующих мыслей, удаляется из своего просторного кабинета в скромный пентхаус на 22-ом этаже.
Антракт
Конечно после антракта есть как минимум второй акт, который включает в себя такие сцены как:
- Факапы в команде случаются, а кто все таки ответственный? TL говорит что у него нет “рычагов” для влияния на команду и вообще есть Руководитель отдела, поэтому какие к нему вопросы то, а еще команда “слабая”, и он бы таких не принял в команду, ну и что нужно взять сильных да лучших. Ну а бизнес говорит TL-у что: “… все же идет от продаж и пока что надо учится работать со специалистами вот такого уровня, но это и плюс и Твой челендж, так как Ты, как TL можешь прокачивать свои навыки кураторства/наставничества/менторства, а также оптимизировать работы таким образом, чтобы делать лучше, быстрее и.т.д...”
- Добавилось у TL административной работы, но бизнес почему-то не устраивает уменьшение процента написания кода TL, а еще надо подавать отчеты о том, что это за такие внутренние активности для команды проводились, вместо того чтобы решать задачи бизнеса, а еще надо объяснять бизнесу чем именно вот эта конференция важна для членов команды (вот же...)
- Ну и надо же процесс Performance Review выстроить у своей команды, чтобы росли же, но как мерять так чтобы оно связано было с теми самыми продажами, ведь “… все же идет от продаж и...”? (голос бизнеса в голове у TL)
- “У вас процессы — *авно !” — говорит TL на очередном митинге своему Руководителю, а тот ему апеллирует “… Евпсихий, будет тебе, пойми, все же идет от...”
В конечном счете TL начинает медленно (а может и быстро), но уверенно перегорать, не понимая что происходит, куда он движется и как так вообще можно, а собственнику надо думать как выходить из такой ситуации. Но бизнес есть бизнес и ситуация в принципе не такая и безнадежная, а даже вполне себе решаемая.
Как ?
В итоге, я для себя понимаю так, что роль/должность Team Leader, полезная и даже необходимая на определенных этапах развития как сотрудника так и бизнеса, но при этом, она, как бы промежуточная, после чего, как сотруднику так и бизнесу, нужно все таки выбрать вектор движения и уже следовать ему. Поэтому то самое решение, о котором я писал выше, может быть реализовано, например, следующими довольно банальными путями:
TL должен выбрать куда двигаться из следующих, действительно необходимых, бизнесу должностей/ролей:
- Стать Архитектором и взять на себя ответственность о принятых архитектурных решениях, углубляться в сторону способов реализации тех или иных архитектурных и инфраструктурных решений при этом понимая ожидания и задачи бизнеса
- Стать PM-ом и взять на себя ответственность за сроки, качество и бюджет проектов/продуктов, за лояльность заказчиков/клиентов и правильную коммуникацию со всеми заинтересованными лицами
- Вернуться в Senior-ы и продолжать нести ответственность за производимый результат по поставленным задачам, а также оттачивать свои знания, углубляясь в техническую сторону своей специализации
- Стать Руководителем отдела и взять на себя ответственность за формирование команды, эффективность работы отдела в целом (в том числе метрики экономического характера), стратегию развития отдела, формирование четких, понятных и масштабируемых процессов отдела и.т.д
Можно заметить что в решении выше, в каждом из пунктов, фигурирует слово ответственность и это неспроста. Собственнику в обязательном порядке необходимо четко зафиксировать ответственность для каждой из ролей/должностей выше, которые в таком же обязательном порядке должны быть завязаны на экономические показатели бизнеса. Тогда и Performance Review станет понятен и люди взявшие на себя описанные выше роли/должности будут понимать что они делают, как и чем за это отвечают и что, и при каких условиях им за это полагается.
В окончании хочу подчеркнуть что вышеизложенное это конечно же мое субъективное мнение, которое, тем не менее, подкреплено жизненным опытом, а также не руководство к действию ибо является всего лишь вершиной того айсберга, который именуется “Успешная Карьера для одних и Бизнес для других”.