Существуют ли 10x Tech Leads? Действительно ли техлиды так важны?

Краткий ответ: да!!

Секрет успеха команды инженеров — эффективный технический руководитель, который направляет команду на правильный путь. Без техлида команда действительно будет нести шпаги в битве танков. В этом блоге мы начнем с определения технических руководителей и их обязанностей, а также объясним важные черты действительно эффективных руководителей.


Кто такой технический руководитель?

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

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

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


Отличается ли технический руководитель от менеджера?

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

В: Вы отвечаете за оценку команды разработчиков?
О: Вы технический менеджер.

В: Связываете ли вы команду разработчиков с заинтересованными сторонами в организации?
О: Вы технический руководитель

В: Часто ли ваша команда обращается к вам за советом по техническим/архитектурным решениям? Сомневаетесь ли вы в технических решениях вашей команды?
О: Вы технический руководитель.

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

В: Являетесь ли вы самым важным человеком, принимающим решения, когда ваша команда решает производственную проблему?
О: Вы технический руководитель.

В: Вы чувствуете, что работаете больше, чем менеджер, но зарабатываете меньше, чем он?
A: Ты, друг мой, настоящий техлид 😀


Что делает техлид эффективным?

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


Сильные технические ноу-хау

Если вы руководите технической командой, то обязательно должны быть очень сильные ноу-хау в области технических архитектур и инженерных систем. Принятие правильных архитектурных и технических решений будет важной частью вашей роли. «Технические ноу-хау» очень часто путают с «полным пониманием» технологии или структуры, чего часто не ожидают. Но наличие прочных основ для оценки выбора дизайна является обязательным.

Технические ноу-хау включают в себя способность проводить эффективные проверки кода и прививать это качество другим членам команды. Поскольку команда будет полагаться на ваши отзывы, чтобы убедиться, что они следуют общепринятым методам кодирования и проектирования. Большая часть вашего дня (30-40%) может быть посвящена просмотру кода и проектной документации. Умение определять места, в которых дизайн или код могут быстро дать сбой, является обязательным качеством для эффективных технических руководителей.

Члены вашей команды также будут полагаться на вас при решении производственных проблем. Наличие кого-то, кто сможет понять или задать правильные вопросы, когда что-то пойдет не так, поможет разработчикам расти. Выяснение мест для просмотра невозможно без четкого понимания того, как работает система и лежащие в ее основе фреймворки. Например, вы не сможете отладить исключение «Heap OutOfMemory», не зная основ среды обработки Java и того, какие объекты приложения потенциально могут вызывать проблемы в сбойном потоке. А для этого нужно знание как основ фреймворка, так и того, как работает приложение.

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


Правильное отношение к общению

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

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

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


Влияние на счастье и инженерную культуру

Угадайте, у кого новый разработчик в команде будет учиться больше всего? Это идет не к менеджеру, а от коллег и технического руководителя. Поскольку разработчики будут очень тесно сотрудничать с техническим руководителем, они, естественно, станут для них первым влиятельным лицом еще до менеджеров. И важно, чтобы вы, как технический руководитель, помнили о счастье членов команды и культуре, в которой работает команда.

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

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

Существует очень высокая корреляция между счастьем и продуктивностью команды. Здоровая рабочая среда является обязательным условием, и эффективное техническое руководство обеспечивает ее.


Наставничество

Знаете ли вы главную причину, по которой «хомо-сапиенс» — такой успешный вид? Это «наша способность формировать коллективный разум намного выше, чем у любого отдельного человека». Секрет нашего успеха.

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

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

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


Понимание и совместное использование бизнес-контекста

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

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

Концепция чего-либо «Начните с Почему” от Саймона Синека относится и к технической команде. Понимание функциональных последствий, которые принесет изменение, и понимание того, «почему» нам нужно это сделать, важно для команды, чтобы найти лучшее решение имеющейся проблемы. А эффективное техническое руководство гарантирует, что каждый член команды знает об этом.


Оптимизация процессов

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

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

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

  1. Команда тратит больше усилий на производственные ошибки, чем на новые функции?
  2. Сталкиваетесь ли вы с высокой частотой неудачных изменений (процент развертываний, вызывающих производственный дефект)?
  3. Является ли процесс обзора узким местом только для фиксированного набора людей?
  4. Ваша команда тратит больше времени на проверку, чем на фактическую разработку?
  5. Ваши циклы развертывания занимают недели, а не дни?

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

Эффективность технического лидера в этих областях — вот что делает технического лидера в 10 раз больше. Невозможно сделать все идеально, но знание того, что важно, поможет техническому руководителю направить команду в правильном направлении.

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

Узнайте, как AnalyticsVerse способствует улучшению процессов и помогает техническим специалистам в 10 раз больше здесь.