У IT-разработчиков есть несколько карьерных ступеней и для многих вершиной развития является тимлид, или лидер команды разработки. Такой специалист уже больше руководит, чем пишет код, однако, это вовсе не означает, будто все его обязанности заключаются в раздаче заданий рядовым программистам.
Тимлид (сокращенно от Team Leader — «лидер команды») — это технический специалист, который отвечает за разработку программного продукта. Как правило, возглавляет отдел, либо курирует одно из направлений в IT-компании. В его ведении находятся все процессы по технической стороне продукта: разработка «дорожной карты», backend, frontend, поддержка, апгрейды и т.д.
Иными словами, тимлид — это вообще не профессия, а должность в команде разработки, причем руководящая. Соответственно, как всякий руководитель, он занимается преимущественно менеджерской работой.
Designed by rawpixel.com/freepik
Чем занимается тимлид, кратко:
Встречи с клиентами и заказчиками, ведение переговоров;
Проработка технической документации по проекту, обсуждение и согласование;
Бюджетирование проекта, расчет финансовых затрат и сроков;
Прописывание road map (дорожной карты) по проекту с конкретными задачами на каждый этап разработки;
Подбор и наем персонала, проведение собеседований с кандидатами;
Распределение задач внутри коллектива, определение ответственных;
Обучение и поддержка профессионального роста перспективных сотрудников и т.д.
На самом деле, кто такой тимлид и какие обязанности он будет выполнять, зависит от корпоративной культуры конкретного предприятия. Если речь о стартапе, то тимлид становится кем-то вроде играющего тренера и многие производственные функции берет на себя. Если специалист трудоустроен в крупной компании, то за ним скорее всего закрепят какой-то определенный участок работы или направление.
Бывает также, что тимлидов привлекают под конкретный проект, особенно если разработка зашла в тупик и нужен взгляд со стороны. А бывает, что тимлид является одновременно либо одним из учредителей, либо и вовсе директором всей компании (такое чаще всего бывает как раз со стартапами).
Однако суть работы тимлида везде неизменна: это руководитель, который отвечает за весь цикл разработки и успешность проекта. При этом ему нужно лично вникать в весь технический процесс, а значит быть тимлидом может только человек с соответствующим опытом и знаниями.
У каждого IT-разработчика по мере наработки опыта появляется запас как soft skills (личностных качеств), так и hard skills (технических знаний). У тимлидов и то, и другое, как правило, прокачано до заоблачных высот.
Как мы уже сказали, это прежде всего руководитель. Следовательно, тимлиду нужны превосходные менеджерские навыки:
Умение вести деловые переговоры и переписку с заказчиками;
Навыки проектно-сметной деятельности и экспертизы;
Рекрутинг и умение подбирать команду;
Аналитические способности и критическое мышление;
Умение расставлять приоритеты и распределять задачи;
Навыки тимбилдинга, умение мотивировать коллектив;
Умение правильно делегировать полномочия исполнителям.
Разумеется, тимлид должен быть чрезвычайно работоспособен, уметь соблюдать сроки и управлять личным временем, что для любого руководителя само собой разумеющиеся навыки.
Не будем забывать и о знании иностранных языков. Тимлиду нужен разговорный английский и умение читать техническую литературу на английском языке, в особенности если он работает на зарубежную компанию.
С техническими навыками сложнее, поскольку конкретный стек, то есть дерево технологий, зависит от направления деятельности тимлида. Однако он однозначно должен разбираться во всех этапах производственного процесса: что творится на стороне frontend, какие есть трудности и подводные камни при backend-разработке, как поддерживать клиентскую систему и обеспечивать контроль качества и т.д.
В целом, hard skills тимлида таков:
Знание нескольких языков программирования: C++/C#, Java, JavaScript и прочих инструментов разработки (Node.js, Typescript, NestJS, PostgreSQL, .NET);
Знание принципов объектно-ориентированного программирования, паттернов написания кода;
Знание алгоритмов и структур данных;
Опыт работы с масштабируемой клиент-сервисной архитектурой, приложениями микросервиса;
Навыки Agile-разработки и иных методик разработки;
Опыт работы с Linux и его дистрибутивами;
Знание принципов DevSecOps и соответствующих паттернов программирования.
Designed by gpointstudio/freepik
Из описанного понятно, что на должность руководителя IT-подразделения может претендовать только человек с соответствующим опытом и знаниями. Средний стаж в индустрии для тимлидов составляет 10 лет. Во-первых, это разработчик уровня Senior, во-вторых, специалист с задатками лидера и навыками управления.
Создавать программный продукт можно научиться в ходе долгой упорной практики, поэтому единственный способ — изучить какой-либо язык программирования и пройти весь путь от джуна до продвинутого разработчика.
А вот пресловутые soft skills для тимлида можно изучить на онлайн-курсах в IT-школах. Если вы видите, что вам не хватает компетенций, но мечтаете руководить, то начать следует с этого. Курсы для тимлидов станут хорошей отправной точкой при трудоустройстве и помогут прокачать недостающие навыки.
IT-разработчики всех уровней востребованы чрезвычайно широко, особенно если речь идёт об опытных и инициативных специалистах. Поэтому вакансий для тимлидов в различных компаниях, включая госкорпорации и международные холдинги, более чем достаточно.
Не нужно говорить, что позиции тимлидов в крупных компаниях оплачиваются на уровне руководителей крупных подразделений. Так, среднее предложение, которое можно встретить в открытом доступе, составляет порядка 350000 рублей в месяц. И это далеко не предел, поскольку часто зарплата тимлида — это предмет индивидуальных договоренностей.
Плюсы:
Высокая зарплата;
Возможность проявить себя;
Востребованность;
Интересная работа.
Минусы:
Ответственность;
Требуется многозадачность и множество различных навыков;
Ненормированный рабочий день, переработки;
Многолетний опыт в IT обязателен.