August 25

Инструкция по выживанию для лида-новичка: 5 скиллов, без которых вам будет больно

Привет! Меня зовут Вадим Ваганов, и когда меня сделали лидером моей первой команды, я думал, что глобально ничего не изменится — просто прибавится чуть больше ответственности и пара новых встреч. Я наивно полагал, что смогу работать как раньше.

Это было сложно, но, превозмогая, я справился: с микроменеджментом, переделыванием задач за других и с «необходимыми» переработками.

Да, я «справился», но в реальности это был полный провал — я укоренил в себе смертельно опасные для лида паттерны. И когда я получил более крупный проект, новую команду, то моментально утонул в хаосе.

Проблема была в «поломке прошивки». Мозг инженера оптимизирован для решения задач, в то время как мозг лида должен быть оптимизирован для создания систем, которые решают задачи.

Мне пришлось пройти через боль, чтобы осознать: мои главные «фичи» в прошлой роли стали критическими «багами» в новой.

Сегодня я расскажу о пяти навыках, которые избавят вас от ненужных страданий и помогут уверенно вести команду вперед.

Навык 1: Делегирование, или как перестать быть «героем-одиночкой»

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

Ваш внутренний individual contributor захочет делать задачи сам, ведь именно это вы умеете делать лучше всего. При этом вы скорее всего не умеете грамотно делегировать.

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

Мой мозг инженера кричал: «Сделаю сам, ведь так быстрее». И я делал. Я забирал сложные задачи, засиживался, становился героем-спасителем. Результат достигнут, а остальное не имеет значения, верно? Я встревал и перепроверял, занимался микроменеджментом.

Но потом с ужасом осознал: из-за такого подхода члены команды не преодолевают трудности. Я своими же руками отнимаю у них возможности для роста.

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

Полечить эту боль мне помогли два простых совета от моего руководителя:

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

Второй: прочитай книгу «Одноминутный менеджер и обезьяны». Нет, «обезьяны» — это не команда :) Это метафора для задач, которые норовят перепрыгнуть с плеч сотрудника на ваши.

Этот разговор перевернул мое восприятие проблемы. Я никогда не мог подумать, что загвоздка именно в доверии, но в итоге для меня это сработало.

Экспресс-терапия по делегированию:

  1. Примите как факт: теперь вы — это ваша команда. Ваши общие успехи — это ваш успех. Замыкать всё на себе и быть «супергероем» — худшее, что вы можете сделать для себя, команды и организации.
  2. Прямо сейчас распланируйте встречи one-to-one с членами своей команды, если вы этого еще не сделали. Проведите серию персональных встреч, посвященных навыкам и развитию. Вполне возможно, что кто-то хочет прокачать скиллы, которых не хватает вашей команде.
  3. Попросите помощи у команды. Если вы растите людей правильно, они всегда будут готовы вам помочь и заодно подтянуть свои навыки.
  4. Начните делегировать не самые критичные задачи, давайте людям право ошибаться и делать что-то неидеально. Направляйте, но ни в коем случае не перекидывайте задачи на себя на половине пути. Хвалите за выполненную работу и аккуратно вносите корректирующую обратную связь.
  5. Постепенно делегируйте более важные и ответственные задачи. Не бойтесь: без работы не останетесь, а ваши люди со временем начнут справляться, поверьте.

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

Бонусные материалы:

Навык 2: Планирование, или как сделать работу команды предсказуемой

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

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

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

Как пофиксить проблемы с планированием:

  1. Если вы, как и я, постоянно не укладываетесь в сроки, живете с ощущением, что задачи «сырые» и каждый спринт в них возникают новые подробности, которые меняют вообще всё, то вам точно не хватает грумингов бэклога. Займитесь командным календарем и поставьте туда ~4 часа таких встреч, распределенных по спринту. Организуйте их в то время, когда у команды еще есть энергия и вы готовы уделить внимание разбору задач.
  2. Начните оценивать задачи не для галочки — используйте эти оценки. Объясните команде, почему это важно. Story points, человеко-часы, попугаи, футболки — не суть. Нам нужно понять, сколько и какой работы мы можем выполнять как команда за промежуток времени. Если знаем, сколько задач делаем за спринт, то можем прикинуть, сколько успеем за квартал.
  3. Включите команду в процесс. Вы не начальник, вы — лидер команды. Выдумать задачи и раскидать их на людей — это не планирование, а путь в никуда. Дайте команде власть: позвольте им задавать вопросы, делиться своим мнением, не соглашаться с вами. Если на груминге и планировании говорите только вы — вы явно делаете что-то не так.
  4. Планируйте от достижения цели, а не от списка задач. Задавайте вопрос не в духе «Что будем делать в следующем спринте?», а «Какого результата мы должны достичь к концу спринта?».
  5. Оставляйте «буферы» для неопределенности. Не планируйте на 100% от доступной емкости команды. Это одна из ошибок, которую все мы допускаем в начале пути. Всегда будут срочные баги, внезапные запросы, больничные и те самые «сырые» задачи.
  6. Используйте инструменты для визуализации планирования, которыми сможет пользоваться вся команда, а не только вы. Наше планирование изменилось навсегда, когда мы нашли удобный для себя инструмент: плагин Easy Agile для Jira.

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

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

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

Навык 3: Расстановка приоритетов, или как делать то, что действительно важно

Как только вы станете лидом, количество информации и опций многократно увеличится. Вы больше не сможете сказать себе: «Это не моя вотчина». И это будет больно, потому что будет казаться, что вы должны контролировать и делать вообще всё.

Здесь есть две составляющие: ваши личные приоритеты и управление приоритетами команды.

Сначала я столкнулся с тем, что у команды слишком много активностей: висит Pull Request, задача-блокер, соседняя команда пришла с дефектом на тесте, а еще какая-то встреча в календаре… Чувствовалось, что команда находится в постоянном стрессе от неопределенности, а от этого тревожился я и думал: «Как же мне это починить?»

Решили мы это раз и навсегда, зафиксировав свои приоритеты в документации:

  1. Инциденты на продакшене.
  2. Инциденты на стейдже.
  3. Установка готовых поставок на прод.
  4. Код-ревью мердж-реквестов.
  5. Всё остальное.

А для закрепления создали дашборд с соответствующими фильтрами. Работать очень просто: сверху вниз опустошаем «корзинки», и, пока там не пусто, ничем другим не занимаемся. Как только всё опустошили — возвращаемся к плановым задачам.

Кстати, именно это нам помогло лучше работать по TBD (Trunk Based Development). Конечно, внедрить за один день не получится, но вы можете отрабатывать ситуации, напоминать своей команде о приоритетах и следовать им сами.

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

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

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

Бонус: моя любимая книга «Цель. Процесс непрерывного совершенствования» Элияху Голдратта — must read, который научит вас видеть то, что приводит к результату, а не просто «работать работу» по накатанной.

Навык 4: Искусство говорить «нет», или как отклонять запросы, не сжигая мосты

Мне было психологически сложно отказывать. Я боялся показаться несговорчивым, поэтому всегда говорил «да». А потом шел и выбивался из сил, пытаясь уместить необъятное, и избыточно нагружал команду работой, которая не вела нас к цели.

Не повторяйте моих ошибок, говоря «да» чему-то второстепенному. На самом деле мы часто молчаливо говорим «нет» своим настоящим приоритетам.

В сущности этот навык — разумное следствие предыдущего пункта про приоритеты. Чтобы заниматься самым важным, нужно научиться говорить «нет». Очень много говорить «нет».

Горькая правда: в большой организации очень много коммуникаций, и со временем компания будет «покушаться» (не со злым умыслом, это просто так работает) на ваш календарь, и это нужно просто принять. А чем лучше ваша репутация «решателя проблем», тем больше людей захотят вашего внимания.

«Я совсем ничего не успеваю, у меня весь календарь во встречах».

Знакомо? Скорее всего, вы не говорите «нет» второстепенным активностям. Хорошая новость: именно вы можете этим управлять.

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

Сомневаетесь? Спросите у своего руководителя: «Стоит ли мне заниматься активностью X?» Со временем вы начнете всё лучше понимать, что важно, а что второстепенно, и сами сможете решать, что стоит усилий вашей команды.

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

Бонус: простые практики, которые делают каждый рабочий день проще.

Навык 5: Manage Up, или как выстраивать продуктивные отношения со своим руководителем

Думаю, это тот навык, о необходимости которого я бы никогда не подумал, будучи начинающим лидом.

Когда ты разработчик, твой руководитель — это твой товарищ по команде. Вы вместе преодолеваете трудности, встречаетесь на дейлике и всегда в одном контексте.

Когда ты лид, твой руководитель уже на ступеньку выше, и правила становятся другими.

Несколько советов, как теперь взаимодействовать с вашим руководителем:

  1. Приходя с проблемой, продумайте варианты решения и прямо озвучьте, какая помощь нужна от руководителя. Это сильно ускорит решение проблемы: вы не перекладываете ответственность на плечи начальства, а просите совета или конкретной помощи.
  2. Периодически синхронизируйте планы, узнавайте боли вашего руководителя. Конечно, на вас будут транслировать планы и задачи, но не бойтесь регулярно уточнять его стратегические цели и приоритеты. Понимая, какие задачи и «боли» у него на верхнем уровне, вы сможете адаптировать работу своей команды так, чтобы вносить максимальный вклад в общий результат, а не просто закрывать задачи из бэклога.
  3. Не скрывайте плохие новости, сообщайте о рисках сразу. Это не признак слабости, а демонстрация ответственности: руководитель получает возможность помочь до того, как ситуация станет критической, и может управлять ожиданиями на своем уровне.
  4. Уважайте его время (если уж на то пошло, уважайте время всех людей, с кем работаете). Если у вашего руководителя несколько команд и множество проблем, решением которых он занят, старайтесь всегда давать контекст; используйте асинхронные способы коммуникации, если нет необходимости в срочном ответе.
  5. Не бойтесь эскалировать, но соберите фактуру: нужно научиться определять ситуации, в которых вы уже ничего не можете сделать на своем уровне, и не бояться сообщать об этом вашему руководителю как можно скорее. Поверьте, он больше всех хочет, чтобы у вашей команды всё получилось.

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

Выводы

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

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

Happy leading!

Автор: Вадим Ваганов, техлид
Канал Вадима для прагматиков, которые хотят большего