Как управлять командой разработчиков
Опубликовано: 2022-04-28Как часто говорят, все компании являются технологическими компаниями. Это означает, что успех компании часто связан с успешным использованием технологий.
Технические руководители должны понимать потребности бизнеса и технические требования для удовлетворения этих потребностей. Одной из их основных обязанностей часто является обеспечение производительности разработчиков, которые создают и поддерживают техническую инфраструктуру компании.
Успешное выполнение этой роли предполагает объединение видения компании с техническими требованиями и личными мотивами разработчиков. Вот несколько советов о том, как управлять командой разработчиков.
Будьте ясны в своем видении
Разработчики — создатели технологий в современных компаниях. Они опытны, полны энтузиазма и увлечены строительством вещей. Следовательно, для успешного управления такими командами необходимо иметь четко определенные цели и задачи.
Это означает, что руководству компании в первую очередь необходимо четко определить видение компании: почему . Затем техническим руководителям необходимо преобразовать это в соответствующее техническое видение, поддерживающее видение бизнеса: как .
Имея четкое представление о том, почему и как, разработчики могут понять, какую работу им необходимо выполнить, и как их работа влияет на общее видение. Ни один разработчик не хочет чувствовать себя «винтиком в машине». Вместо этого они хотят знать, что их работа оказывает влияние. Эти знания дают энергию, чтобы сохранять мотивацию при выполнении сложных задач, прилагать дополнительные усилия и действительно продвигать бизнес вперед с технологической точки зрения.
Определить совершенство
Как только появится ясность видения, техническое руководство должно задать тон инженерной культуре.
Сильные, способные разработчики — это мастера своего дела, которые гордятся своей работой и хотят чувствовать себя способными делать все возможное. Когда ярлыки распространены, сроки важнее тестирования или разработчики перегружены работой, культура будет отталкивать тех, кто действительно квалифицирован и талантлив.
Эффективные технические руководители выступают за ответственное проектирование и поддерживают инициативы, обеспечивающие качество архитектуры и кода. Они прислушиваются к потребностям разработчиков, разбираются в блоках и работают над поиском продуктивных решений, соответствующих потребностям бизнеса.
Во многих случаях это означает смотреть в будущее. Всегда будут крайние сроки и давление, чтобы отправить продукт вчера. Но ответственность технических руководителей заключается в том, чтобы смотреть в будущее и обеспечивать устранение краткосрочных кризисов с помощью устойчивых, долгосрочных процессов, улучшая общее качество продукта и производительность команды.
Сосредоточьтесь на развитии карьеры
Разработчик, который не поддерживает свои навыки на должном уровне, рискует устареть и не сможет воплотить лучшие идеи в результаты компании. Это одна из причин, по которой разработчики и вообще специалисты по разработке программного обеспечения известны ожиданием непрерывного обучения.
Поэтому технические руководители должны осознавать потребности, цели, интересы, навыки и сильные стороны своей команды и предоставлять разработчикам возможности для роста в соответствии с видением компании.
Наличие места, где можно применить новые навыки или попробовать что-то новое, чрезвычайно ценно для разработчиков. Многие компании предлагают бюджет на личное развитие, отправляют сотрудников на конференции или поддерживают процент рабочего времени, чтобы сосредоточиться на задачах, которые приносят пользу инженерной команде, а не только бизнесу.

Наставничество со стороны старших руководителей групп также может обеспечить ценную подготовку для более молодых членов и мотивацию для роста в компании. Обмен знаниями в команде расширяет возможности всех и делает общий продукт более надежным и менее вероятным, чтобы его контролировали разрозненные лица или группы.
Обеспечивая рост разработчиков внутри компании, технические руководители также укрепляют технологическую основу, обеспечивая долгосрочное здоровье и конкурентоспособность услуг и продуктов компании.
Работайте над своими навыками работы с людьми
Лидерство любого рода всегда предполагает управление людьми, а также процессами, в рамках которых они работают. Правильные люди с сильными процессами приводят к созданию качественных продуктов и услуг.
Понимая, как работают разработчики, что их мотивирует и как эффективно общаться, технический менеджер может завоевать уважение своих разработчиков и помочь им выполнять свою работу наилучшим образом. Вот почему хорошие технические лидеры часто сами когда-то были разработчиками.
Обычный рефрен в технологических компаниях — «найм для соответствия». Это означает, что хотя технические навыки важны, культурное соответствие еще важнее. Мы все хотим работать с людьми, которые нам нравятся, и технический руководитель распознает взаимопонимание в своей команде, находит правильный баланс схожих и разных точек зрения и замечает пробелы в команде, которые необходимо заполнить.
Для максимальной производительности боевой дух должен быть высоким — один недовольный разработчик может подорвать боевой дух всей команды. Чем счастливее команда, тем легче ею управлять и мотивировать, что приводит к лучшим идеям и большей производительности.
Будь буфером от политических проблем
Разработчики часто из тех людей, которые хотят избежать политики. Именно поэтому многие из них избегают руководящих должностей. Они предпочитают тратить свое время на создание систем, создавая код, а не ориентируясь в социальных иерархиях.
Тем не менее, предприятия — это социальные институты, которые, естественно, имеют политическую сторону, где необходимо принимать решения, у людей есть корыстные интересы, и необходимо вести жесткие разговоры.
Технический руководитель должен действовать как буфер от политических ветров, которые могут возникать на более высоких уровнях управления, и защищать разработчиков от этого давления, чтобы они могли сосредоточиться на производительности. Хотя разработчики вполне логичны, они тоже люди и должны чувствовать, что их ценят и что их руководитель группы присматривает за ними. Таким образом, технический руководитель должен отстаивать то, что лучше для команды, а также вести переговоры о потребностях бизнеса с более высокими уровнями управления.
Люди, процессы и архитектура
Техническое лидерство в конечном итоге сводится к управлению людьми, процессами и архитектурой. Правильные люди, эффективные процессы и надежная архитектура позволяют создавать качественные продукты и услуги.
Признание потребностей разработчиков и предоставление ресурсов, необходимых им для процветания, способствует успеху разработчиков и воплощает в жизнь видение компании.
Джонатан Блукс (Jonathan Bluks) — ведущий преподаватель веб-разработки в BrainStation, опытный веб-разработчик с полным стеком и технический энтузиаст.
