Всем привет! Я Александр Яковлев, в Тинькофф руковожу разработкой бизнес-линии в нефинансовых сервисах. Расскажу, чем занимаются тимлиды у нас в компании и что делать, чтобы вырасти до тимлида, а еще пройдусь по распространенным заблуждениям о работе. Добро пожаловать под кат! Тимлид — это первый уровень руководителя, на котором нужно управлять линейными сотрудниками. Дальнейшее движение по управленческой ветке в нашей компании выглядит примерно так:  В иерархии могут встречаться промежуточные роли, например заместитель любой из ролей или же агрегирующая роль вроде групплида над тимлидами. Если описать одним предложением, тимлид повышает эффективность команды разработки. Емкое, но довольно широкое определение, поэтому стоит выделить три направления, куда должен быть направлен основной фокус тимлида: Delivery — тимлид выстраивает процессы разработки в команде и делает так, чтобы команда поставляла продукт точно в срок, а бизнес-заказчик был доволен. Собирает метрики и использует их для непрерывного улучшения. Team development — тимлид строит эффективную команду и формирует правильную культуру, отвечает за наем, адаптацию и развитие сотрудников. Technical — тимлид технический специалист, но не обязательно самый умный и способный разработчик в команде. Он находится в контексте технологий, с которыми работает команда, выстраивает процесс принятия архитектурных решений, отвечает за соблюдение нефункциональных требований (НФТ, они же Quality Attributes) и поддерживает техническое совершенство в разрабатываемых системах и в используемых подходах. Работа тимлида заключается в том, чтобы находить баланс между всеми направлениями. Здесь справедлива метафора — телега с тремя разными колесами не поедет. И если тимлид будет заниматься только бизнесом и техникой, начнет проваливаться команда (сотрудники не растут/уходят/демотивируются), а если тимлид делает фокус на бизнес и команду, то кодовая база, как и сам проект, может быстро превратиться в неподдерживаемое легаси. При найме тимлидов в нашу компанию кандидаты, как правило, проходят три секции собеседований. Две из них технические, там проверяют знание основного технологического стека кандидата и навыки дизайна архитектуры систем. Третья секция посвящена менеджменту и позволяет проверить навыки и опыт кандидата по первым двум направлениям — Delivery и Team Development. Подробнее про требования к тимлидам при найме можно почитать на нашем лендинге. Кроме навыков и компетенций можно выделить отличительные черты успешного тимлида в Тинькофф. Тимлид в нашей компании — это носитель Тинькофф ДНК, он работает в соответствии с культурными принципами, которые помогают ему принимать эффективные решения и создавать результативную команду.  Тимлид Тинькофф всегда ищет win-win во взаимодействии как внутри своей команды, так и со смежными командами и бизнесом. Не боится выходить за границы зоны ответственности и предлагает решения проблем, иногда до того, как они успеют оказать негативное влияние на команду. Людей, которые становятся руководителями, объединяет особое отношение к ответственности и проактивность. Эти качества трудно привить на пустом месте, но можно создать благоприятные условия, чтобы они проявились. Стоит брать на себя ответственность за сложные задачи и повышать уровень экспертизы — как технической, так и в продукте. Когда начинаешь задумываться о своем развитии в сторону тимлида, то самое время определить, на чем сфокусироваться. Вместе со своим руководителем можно составить план индивидуального развития или начать делегировать отдельные задачи.  Вот список направлений, если есть цель вырасти в тимлида. Развитие технических компетенций. Как показывает опыт, желание развиваться в тимлида появляется у сотрудников с уровня Middle+/Senior.  Перед тем как начать руководить командой, необходимо приобрести достаточно технических компетенций, чтобы чувствовать себя уверенно в реализации задач. При этом развиваться следует не только вглубь, повышая экспертизу в отдельных технологиях, но и вширь — охватывая все технологии, которые используются в команде.  В мировой практике развитие вширь называется T-shape-развитием: На позиции тимлида требуется много знать в ширину, чтобы понимать, что делает команда, какие технологии использует, и иметь возможность быстро вникнуть в проблему и понять суть. Знаний должно быть достаточно, чтобы принимать решения об используемых технологиях с учетом особенностей языков и технологий, которые использует команда.  У нас под каждую специализацию в отделе или управлении есть лидер профессии, с которым достаточно синкаться, чтобы быть в контексте, если в команде присутствует мультиязычность. Следует отметить, что тимлид не принимает решения единолично, а привлекает к этому команду. Но даже в случае совместно принятых решений ответственность за успехи и неудачи в контексте выбранного решения несет тимлид. Хороший тимлид не присваивает себе заслуги команды в случае успеха, но отвечает за факапы. Повышение эффективности работы во многом зависит от технологий и подходов, которые используются в команде. Тимлид, как постоянный драйвер улучшений, должен оставаться в контексте практик, которые использует команда, находить узкие места и внедрять позитивные изменения, а также следить за общепринятыми best-practice как в компании, так и внутри профессий. Помимо реализации задач и проектов тимлид должен уметь переводить технические сложности на понятный язык бизнеса, подсвечивать все риски реализации проекта и оценивать сроки. Все это требует достаточного понимания деталей реализации технологий, которые использует команда, их слабых и сильных сторон.  Как правило, приоритизацией задач занимается бизнес, но тимлид принимает в этом активное участие, так как может оценить и сказать, сколько трудозатрат стоит задача (в человеко-часах/неделях/месяцах или же в других понятных единицах), объяснить риски, отстоять свою позицию и аргументированно ответить, почему так долго, или предложить альтернативы. Тимлид отвечает за приоритизацию техдолга среди бизнес-задач, для чего необходимо аргументированно продавать бизнесу выделение приоритетов на сокращение техдолга и другие технические улучшения. Проактивность — очень важный навык, без которого нельзя вырасти в хорошего тимлида. Суть заключается в том, чтобы предлагать и драйвить улучшения, когда тебя об этом не просят. Если ты видишь, что что-то работает неэффективно, можно сделать лучше и ты даже знаешь как, — не молчи, расскажи об этом своему руководителю, а еще лучше — вынеси на командное обсуждение и продай свою идею, как сделать лучше. Быть проактивным — значит никогда не оставаться равнодушным к проблемам, с которыми сталкивается команда. Если пока не видно проблем, но хочется проверить, насколько можно быть полезным в качестве тимлида, стоить спросить у своего руководителя, какие проблемы или возможности улучшений он видит, и предложить свою помощь. Любой тимлид с радостью делегирует перспективным сотрудникам часть своих задач. Именно так у сотрудника расширяется зона ответственности и происходит карьерный рост, а руководитель получает возможность взрастить себе достойную замену.  Перед тем как вырасти в тимлида, стоит попробовать себя в роли заместителя своего руководителя — тогда при открытии позиции тимлида можно получить свою команду. Проактивность способствует построению хорошей культуры в команде, а это одна из задач тимлида. Будучи проактивным сотрудником, можно не только драйвить улучшения вокруг, но и заражать проактивностью других членов команды, показывая собственным примером, как повышать эффективность работы команды.  Заслужив признание в команде, больше шансов стать заместителем своего тимлида, а в перспективе — получить свою команду или возглавить текущую. Строить и поддерживать правильную культуру в команде — одна из важнейших задач руководителя, так как такие команды требуют меньше регламентов и контроля, а члены команды понимают без слов, как эффективно делать свою работу. Самостоятельность в принятии решений. Любому тимлиду приходится постоянно брать на себя ответственность, принимать решения, когда информации недостаточно, обозначать бизнесу сроки, часто — для непроработанных проектов на раннем этапе. Прежде чем охватить все проекты, которые реализует команда, можно начать отвечать за отдельные крупные фичи, попросить руководителя делегировать проект со всеми сопутствующими коммуникациями и принятием решений. Если это происходит впервые, скорее всего, руководитель обозначит точки контроля, чтобы оставаться в контексте, следить за тем, что все идет по плану и отсутствуют риски факапа. Если все получится, это хороший повод продолжить увеличивать зону ответственности новыми проектами и делегировать кандидату в тимлиды принятие большего количества решений. Не стоит переживать, если тимлид применяет повышенный контроль к проекту, который делегировал. Главное в реализации любой крупной фичи — делать работу прозрачной. Здесь важна регулярная синхронизация со всеми заинтересованными сторонами, не только с руководителем, но и с бизнес-заказчиками. Чем прозрачнее работа, тем меньше контроля со стороны руководителя и тем больше ответственности можно делегировать. Именно так растет уровень самостоятельности будущего тимлида, а у руководителя — уровень доверия к принятым им решениям. Есть очень наглядная матрица доверия и прозрачности в статье про управленческие инструменты: Обращать внимание на эмпатию. Еще одной отличительной чертой хорошего руководителя является эмпатия. Если есть цель расти в тимлида, стоит помнить, что эмпатия — это способность сочувствовать и сопереживать своим коллегам.  Нужно слушать их и уметь обоснованно защищать свою точку зрения. Стоит на ранних этапах развивать в себе способности чувствовать настроение — кто-то в команде может устать от задач, кто-то не хочет делать определенные задачи. Стоит подсветить подобные кейсы своему руководителю, а еще лучше — предложить идеи, как поднять уровень мотивации отдельных сотрудников.  Если ты уже отвечаешь за крупную фичу и тимлид доверил распределение задач в команде, всегда старайся продать задачу своему коллеге, замотивировать. Даже если ты отвечаешь за проект и тебе делегировали принятие решений, нужно слушать своих коллег, уметь договариваться с людьми из своей и внешних команд. Про умение слушать есть неплохой TED Talk: Кроме основных фокусов в работе хочется сразу проговорить основные ожидания от роли тимлида и о том, как все происходит на самом деле. Миф: прежде чем стать тимлидом, нужно стать самым сильным разработчиком в команде. Правда: не все разработчики подходят для роли тимлида и хотят расти по управленческой ветке. Роль тимлида — среднее между менеджером и разработчиком, хотя во многих командах требования к этой роли могут разниться от ведущего разработчика до ИТ-менеджера. В Тинькофф мы сформулировали общие требования к роли тимлида через матрицу компетенций, а выше описаны основные направления, которые стоит развивать. Поэтому нельзя сказать, что лучший разработчик в команде обязательно вырастет в тимлида, особенно с прицелом на развитие исключительно технических компетенций и знаний в глубину. Миф: как тимлид я смогу выбрать себе самые интересные задачи. Правда: если интересные задачи — это проработка сложных технических решений, то с большой вероятностью времени на такие задачи будет оставаться крайне мало.  Здесь можно говорить только об исходной проработке решений с целью снижения неопределенности для себя и для команды, а дальнейшая работа тимлида заключается в формализации и декомпозиции на более мелкие задачи, оценке сроков, делегировании и контроле выполнения.  Могут потребоваться отчеты наверх — бизнесу или руководителю. На позиции тимлида приходится работать с большими задачами, которые рассчитаны на игру вдолгую, с длительной обратной связью. Такие задачи необходимо разбивать на кусочки, отдельные кусочки делегировать в команду и контролировать ход реализации. Миф: когда я стану тимлидом, от меня будет требоваться разрабатывать задачи почти в том же объеме, за минусом времени, которое тратятся на встречи. Правда: когда ты тимлид, никого не интересует, сколько у тебя задач, руководителю и бизнесу важен результат. Нет фиксированной пропорции на кодинг, этим придется управлять самостоятельно. Нужно быть готовым, что времени заниматься разработкой станет меньше, а к рабочей рутине добавится больше митингов, регулярных оценок и отчетов, вовлеченности в решение вопросов с большой разнородностью.  За приоритизацию собственных задач отвечаешь ты сам, нельзя делегировать это руководителю или бизнес-заказчику. Если ты тимлид, ты сам решаешь, что и как тебе делать. Управление собственными задачами — один из самых сложных аспектов, с которыми сталкиваются молодые тимлиды. Больше нет руководителя, который четко скажет, какую задачу делать сейчас, а какую потом.  В связи с этой сложностью можно ошибиться и начать двигаться в направлении, которое стратегически не приведет к успеху. Например, закрывать факапы своим ресурсом и личным временем, пытаясь дописывать оставшийся код. Опытный тимлид не будет выполнять всю работу, которую не успевает команда, а сделает так, чтобы команда успевала делать то, что от нее ожидается, или, проще говоря, попадала в ожидания. Успевать должна команда, а не конкретно тимлид. Миф: у тимлида гигантское количество задач и встреч. Правда: многие начинающие тимлиды на старте борются с чувством неэффективной работы — когда в конце дня приходит осознание, что за день не было ничего сделано, хотя каждые 10 минут прилетал какой-то вопрос, который требовал вовлечения.  Нужно быть морально готовым к многозадачности и большому потоку входящих: много чатов в мессенджере, много людей с вопросами, много задач приходится отслеживать в Jira.  Многие тимлиды вынуждены заниматься личным тайм-менеджментом, читать Дорофеева и вообще управлять своей работой, которая почти всегда выходит за рамки Jira-пространства команды. Со временем приходит понимание, как все структурировать и авторизовать результат собственной работы.  Все тимлиды приходят к пониманию, что нужен единый список задач, требуется выделять время на операционку, а когда задач много — их нужно делегировать. Важная часть работы руководителя — распределение ответственности в команде, регулярная продажа задач и ответственности в команде. Миф: тимлиду всегда приходится подстраиваться под бизнес и нельзя говорить нет. Правда: работа с заказчиками и стейкхолдерами — одна из основных задач тимлида. Хороший тимлид умеет стоять на своем и не боится отказывать, но при этом находить win-win с заказчиком. Во взаимодействии с бизнес-заказчиком важно обеспечивать прозрачность: открыто подсвечивать риски, снижать уровень неопределенности и обозначать сроки исходя из собственной оценки.  На ранних этапах проекта стоит большое внимание уделять планированию, а после — давать регулярное обновление изменений, если это требуется для обеспечения прозрачности. Миф: тимлиду часто приходится обозначать сроки реализации, когда практически отсутствуют бизнес-требования. Правда: в работе такое действительно встречается и приходится называть сроки на очень ранних этапах разработки. Всегда можно взять время на анализ задачи, но тимлиду необходимо понимать и транслировать бизнесу риски на ранних этапах разработки проекта в условиях неопределенности.  Хороший тимлид никогда не скажет, что сроки назвать невозможно, так как в проекте много рисков и много неопределенности. Вместо этого стоит транслировать верхнеуровневую оценку и сказать, что навскидку проект потребует четыре месяца работы командой из трех человек, но мы можем его более детально проанализировать и к следующей встрече дать более точные сроки. А к следующей встрече оценить, сколько человеко-часов/недель/месяцев потребует реализация и в каких местах ее можно будет распараллелить. Миф: только разработчики вырастают в тимлидов. Правда: возможность вырасти в тимлида есть у каждого члена команды, но стоит принимать во внимание ожидания и требования, которые в компании предъявляются к тимлиду.  Основные вопросы к не имеющим опыта разработки тимлидам будут возникать в контексте технологий и подходов, которые использует команда разработки, контроля качества кода и объема техдолга, который может сдерживать развитие.  Тимлид должен оставаться в контексте практик, которые использует команда, находить узкие места и внедрять позитивные изменения. Чтобы вырасти до позиции тимлида не имея опыта разработки, необходимо быть достаточно T-shape, чтобы погрузиться в проблемы разработки в том числе на уровне кода, или же должны быть соответствующие условия на проекте. В любом случае это стоит проговорить со своим руководителем и вместе составить план развития, в рамках которого закрыть пробелы и приобрести необходимые знания. Миф: тимлиду приходится нянчиться со слабыми членами команды. Правда: развивать своих людей — очень важная задача тимлида. Необходимо понимать сильные и слабые стороны своих специалистов для распределения задач в команде.  Но это не значит, что тимлид должен держать у себя в команде слабых или проблемных сотрудников. Хороший тимлид не боится увольнять low-перформеров и стремится собрать свою «спортивную команду звезд», но при этом не забывает про риски и просадки, с которыми может столкнуться проект. Миф: если я стану тимлидом и не справлюсь с новой ролью, меня могут уволить. Правда: риск увольнения после назначения на позицию тимлида минимален, если делиться своими проблемами и переживаниями с вышестоящим руководителем.  Если на позиции тимлида работа перестает приносить былое удовольствие и пропадают амбиции расти по руководящей ветке, то никогда не зазорно вернуться к разработке и продолжить развиваться по технической ветке. Теперь, зная, что из себя представляет работа тимлида и на чем стоит сфокусироваться, чтобы расти в правильном направлении, можно делать свои первые шаги. Чтобы как можно раньше распознать в себе тимлидские наклонности, стоит попробовать менторство. Такой опыт поможет понять, доставляет ли удовлетворение то, что другой сотрудник реализует большой проект, учится новому и побеждает благодаря тебе. Кроме менторства, договорись с руководителем о передаче тебе в ответственность части проекта или реализации крупной фичи. Договорись о контрольных точках и ожиданиях руководителя от результатов твоей работы. Отвечая за кусок проекта или реализацию нового функционала, старайся принимать решения самостоятельно, калибруясь с руководителем. Перед принятием сложного решения обязательно напиши руководителю о проблеме и предлагаемом решении. Успехов в начинаниях и заглядывай в наш телеграм-чат, где мы рассказываем о жизни команды и публикуем вакансии. А если есть вопросы или желание поделиться своим опытом — жду в комментариях!  Разработчик