Руководство разработкой: beginner’s survival guide

в 7:27, , рубрики: Блог компании Яндекс, Карьера в IT-индустрии, команда яндекс.поиска, руководство для чайников, тимлиды и разработчики, управление проектами, управление разработкой, Учебный процесс в IT
Руководство разработкой: beginner's survival guide - 1

Привет! Меня зовут Наташа, я руковожу разработкой бэкенда страницы yandex.ru. Сейчас у нас в команде больше двадцати человек, которые входят в отдельные группы разработки. Три года назад я впервые стала «тимлидом» маленькой группы из четырёх человек, накопив к этому времени десяток лет опыта в разработке и эксплуатации. Я не стесняюсь сказать, что переход от разработчика к тимлиду дался мне тяжело — и это нормально!

Мне нравится помогать людям в их жизненном пути и ко мне часто приходят начинающие руководители для получения опыта. Работа с людьми показала, что все проходят одинаковый путь с одинаковыми проблемами. Эта статья — мой способ наглядно показать начинающим руководителям происходящее с ними и дать очень простые инструменты, облегчающие первый переход от исполнителя к руководителю.

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

1. Введение

Итак, начнём. Есть фундаментальная проблема роста из специалиста в руководителя. Сразу же заменю здесь слово «рост» на более точное слово «трансформация», потому что никакого роста как раз не происходит.

Как обычно представляют себе этот «рост»
Руководство разработкой: beginner's survival guide - 2

Как всё работает на самом деле
Руководство разработкой: beginner's survival guide - 3

Тут должно стать понятнее, почему это трансформация: потому что это смена одного направления на другое.

Почему так

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

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

При получении новой роли и подчинённых человек не продолжает развиваться, опираясь на имеющиеся знания, а начинает двигаться в совершенно иной ветке — управлении. Таким образом, это не рост, а смена вида деятельности или смена профессии, если так понятнее. Невозможно из великолепного разработчика, даже с отличными лидерскими качествами, сразу стать нормальным руководителем, если ты этого никогда не делал. Развитие начнётся тогда, когда человек сможет более или менее справляться с новыми обязанностями за счёт приобретённых знаний и навыков (стадия выживания). А о росте можно говорить, когда он станет привносить что-то новое из области управления в свою повседневную работу и в работу системы, которой он управляет.

Какие неочевидные штуки начинают происходить

Самая первая проблема, с которой сталкиваются молодые руководители, — отрицание новой реальности. Реальность проявляется в том, что старые модели поведения перестают работать, а человек начинает испытывать нарастающее напряжение, потому что пытается играть новую роль старыми способами. Это приводит к конфликту: «Вроде бы я всё делаю правильно, но что-то не так». А конфликт, в свою очередь, приводит к увеличению усилий и к росту внутреннего напряжения.

Ниже описаны типовые ловушки, в которые легко попасть, делая новую работу старым способом в стадии отрицания.

Скиллы-бонусы => скиллы для выживания

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

Копать золотой лопатой

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

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

Играющий тренер

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

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

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

Состояние потока

Большинству людей из разработки, которые любят свою профессию, знакомо чувство потока. Его сложно с чем-то сравнить, и оно прекрасно. Можно ли в управлении войти в чувство потока? Да. Это отдельная тема, и она требует исследования себя, чтобы сформировать подходящий образ работы. Не теряйте надежды: поток обязательно случится, хоть и не сразу.

Очень много операционки

Очень-очень-очень много операционки. Что такое операционка? Это регулярно повторяющиеся однообразные действия, производимые для поддержания работы системы. То есть это выполнение операций. У них что-то на входе, что-то на выходе, но принципиально в системе ничего не меняется.

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

Как обычно выглядит состояние руководителя

Руководство разработкой: beginner's survival guide - 4

Как оно должно выглядеть

Руководство разработкой: beginner's survival guide - 5

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

Время = энергия и лимит принятия решений

Распределение времени — одна из первых проблем, с которыми я столкнулась. Я долго не понимала, что происходит: казалось, что я внезапно очень сильно постарела, заболела или произошло ещё что-то плохое, потому что каждый вечер я чувствовала невероятную усталость. А вот что произошло: будучи разработчиком и находясь в потоке, я часто могла заниматься своей задачей по десять-двенадцать часов в день, потом ещё на выходных хватало сил на пет-проджекты, и всё было прекрасно. Откуда-то у меня было убеждение, что раз можно программировать по десять часов, то можно и ходить на встречи по десять часов. Но это не так. Программирование — это примерно 20% анализа задачи и выработки решения и ещё 80% её реализации и придумывания воркэраундов для суровой реальности. То есть час на принятие сложных решений и четыре часа на их реализацию в более или менее комфортном темпе.

Когда ты ставишь двенадцать встреч в день по 30 минут, то выходит шесть часов принятия сложных решений в условиях очень ограниченного времени при полной смене контекста. Встречи начинаются в 10:00, заканчиваются в 16:30 (обедаю где-то по дороге), и я сижу и думаю, почему хочется умереть — ведь рабочий день в разгаре и у меня ещё столько планов, я же совсем немного поработала. В общем, количество времени, затраченного на работу, никак не связано с количеством израсходованной энергии. Как выяснилось, она не бесконечна. Можно случайно перегнуть, и тогда восстановиться бывает очень сложно. Наблюдайте за собой и контролируйте состояние, чтобы не допустить выгорания.

Цикл обратной связи

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

Авторитет эксперта

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

Потеря цели

Что происходит: у нас был классный разработчик, понимавший, как он будет развиваться, планировавший изучить machine learning, коммитить в ядро Linux, придумывать свои алгоритмы. Потом к нему пришли и сказали: «Ты такой классный разработчик, мы решили, что теперь ты будешь руководителем. Ты молодец!»

Что происходит в голове у нашего героя: «Вау, это доказательство того, что я крут, я расту!» Примерно это, хотя тут куча вариаций.

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

А что я буду делать, если раздам все зоны ответственности и перестану гонять на поле?

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

Какие знания даёт типичный курс начинающего руководителя

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

Где эти знания находятся, по мнению большинства (я тоже думала, что здесь)
Руководство разработкой: beginner's survival guide - 6

Где они находятся на самом деле
Руководство разработкой: beginner's survival guide - 7

Суровая правда: курс учит, как делать, но не учит, что делать.

Когда наступает хоть какое-то чувство комфорта

Большинство компаний ведёт упорядоченный образ жизни и живёт циклами. Циклом может быть проект или какая-то внутренняя жизнь компании, например, полугодовое планирование. Если вы не знаете об этих циклах — это не значит, что их не существует. Лучше сразу выяснить, что это за циклы, и выстраивать свою работу в синергии с ними.

Опыт и наблюдения показывают, что в среднем молодому руководителю нужно три раза пройти цикл (сделать три проекта или три раза пройти полугодовое планирование): в первый раз получится кое-как, во второй раз всё пойдёт по-другому, в третий — какие-то части начнут быть похожими на предыдущие две и человек сможет сделать выводы.

Когда на самом деле начинается рост

Настоящий рост руководителя начнётся, когда:

  1. Он научится стабильно работать в новой реальности, справляться со своими минимальными обязанностями и при этом не думать каждый день, что всё плохо и непонятно. Это стадия принятия и экономии энергии.
  2. У него появится ясная картина собственного будущего в области управления, превосходящая его текущие возможности. Это стадия выхода из ямы, ощущение уверенности в выбранном пути.
  3. Появится постоянное желание менять старое и привносить новое. Это стадия идей и генерации энергии.

До тех пор, пока молодой руководитель не начнёт работать как руководитель, он будет думать, что продвинулся на пути к своей заветной цели про условный machine learning, но правда в том, что он едет в другом поезде.

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

2. Целевое состояние

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

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

Попробуйте начать с текстового описания своего образа: возьмите ручку, бумагу и ответьте на вопросы:

— Чем мне нужно заниматься на самом деле?
— Каким я хочу быть в роли руководителя?
— Как я хочу чувствовать себя в роли руководителя?

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

Затем опишите критерии, по которым будете оценивать, двигаетесь ли вы в нужную сторону. Например, они могут быть такими:

— Я перестала работать по двенадцать часов.
— Мне больше не звонят ночью.
— Команда выполнила запланированные проекты.
— Мы наняли трёх новых сотрудников (а старые не ушли).
— …

Тут может быть что угодно: всё зависит от конкретной ситуации.

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

3. Движение

В этой части будет два рецепта по движению к целевому состоянию:

— Анализ текущих усилий
— Преодоление оставшегося беспокойства

Анализ текущих усилий

Это практическое упражнение обычно занимает два-три часа. Лучше иметь напарника, который будет задавать заготовленные неудобные вопросы.

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

Таблица

Нужно нарисовать вот такую таблицу:

Руководство разработкой: beginner's survival guide - 8

Деятельность: сюда пишем все виды деятельности, которыми вы обычно занимаетесь. Например, код-ревью, распределение задач, встречи с руководством, найм, управление проектом Х, выполнение задач руками, планирование ресурсов. Даже разные виды встреч — это разная по смыслу активность. Когда я первый раз заполнила такую таблицу, у меня получилось 30+ видов деятельности. Если у вас получилось десять, то надо напрячься и думать дальше. Если отнестись к этому аккуратно, то в сумме получится примерно столько времени, сколько вы реально тратите на работу.

Функция: здесь нужно честно ответить себе на вопрос, в какой роли вы выступаете, делая эту работу. Является ли это работой того руководителя, образ которого вы себе нарисовали? Также можно писать комментарии о цели работы. Например: «Руководитель — поддержка морального духа». Или: «Специалист — проверка качества работы». Вот тут как раз пригодится напарник, который будет задавать вопросы, почему это делаете именно вы, точно ли это должны делать именно вы. Для одного вида деятельности может быть несколько функций, так что не торопитесь и прислушайтесь к себе.

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

Сколько это в неделю: нужно пересчитать всё, что написано в предыдущей колонке, в количество часов в неделю.

Тут ждёт первый бонус: сумма общего времени, затрачиваемого на работу. Если она получилась подозрительно меньше, чем вы на самом деле работаете, то вернитесь к первому пункту и вспоминайте, чем ещё занимаетесь. Первый раз у меня вышло 50+ часов — даже без учёта того, что надо ещё обедать, делать перерывы и что бывают всякие внезапные вещи. Именно в тот момент я перестала удивляться, почему работа всё время переезжает на выходные, а мой календарь выглядит как апокалипсис эффективности. Тогда я ещё пыталась улучшать инструменты для повышения личной эффективности, но проблема была в другом — в отсутствии чёткого представления о работе руководителя.

Это мне нужно делать на самом деле: колонка, в которой вы проставляете «да»/«нет». Если совсем тяжело, то можно выбирать вариант «частично».

Что с этим сделать: и тут самое интересное. Придумайте, что сделать с теми вещами, которыми заниматься не нужно или нужно частично. Так вы перестанете тратить на них столько времени. Всё зависит от конкретной ситуации. Можно передать эти задачи кому-то другому, делегировать человеку «на вырост», перестать делать вообще, упростить, автоматизировать, поделить и раздать команде и так далее.

Пожинаем плоды

Все строки таблицы нужно раскрасить в красный, жёлтый и зелёный цвет.

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

Получится что-то в таком роде:

Руководство разработкой: beginner's survival guide - 9

Теперь с опустошённым сознанием посмотрите на таблицу. Ну как?

И бонус номер два: для всех красных и жёлтых видов деятельности посчитайте сумму часов в неделю, которая освободится, если воплотить в жизнь все решения из колонки «что с этим сделать». Как вам результат? Если получилось 0, то вы себя обманываете.

Что делать дальше

Выберите из последней колонки то, что вы сделаете в течение следующего месяца. Через месяц вернитесь и актуализируйте таблицу (вычеркните те виды деятельности, которыми вы перестали заниматься), уточните затраты по времени, выберите новые действия на следующий месяц. Если всё выполняете правильно, то через три месяца вы освободите себе достаточно времени, чтобы начинать заниматься новыми направлениями из вашего целевого состояния.

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

Преодоление оставшегося беспокойства

Рецепт на тот случай, когда мучает ощущение, что ещё есть задачи, которыми нужно заниматься, но сейчас на них нет достаточного ресурса. Вы сможете за них взяться, когда воплотите в жизнь всё придуманное в предыдущем упражнении. Но пока этот момент не наступил, можно создать mind map.

Нарисуйте в центре вопрос: «Что меня беспокоит?».

Руководство разработкой: beginner's survival guide - 10

И честно выписывайте всё, чем, по вашему мнению, нужно или хочется ещё заниматься.

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

Затем у каждого пункта честно напишите, есть ли необходимость делать это прямо сейчас. Например: «делать», «отложить до Х», «не делать» или ещё какие-то варианты на ваш вкус.
Те пункты, где вы решили ничего не делать, можно просто выбросить из головы и перестать о них беспокоиться, ведь решение уже принято.

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

Получится что-то такое (все совпадения случайны, картинка выдуманная):

Руководство разработкой: beginner's survival guide - 11

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

4. Финальная часть

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

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

Задача управления

Основная задача управления — достижение целей за счёт сознательных усилий. Здесь два ключевых слова: цель и сознание.

(Отдельно замечу, что отказ от достижения цели — это тоже достижение цели, но другой — находящейся уровнем выше.)

Задача руководителя

Основная задача руководителя — убирать все препятствия на пути достижения цели. Система может работать очень эффективно, если устранить всё, что мешает ей это делать: убрать все точки сопротивления, шероховатости и нестыковки.

Что делать, если я до сих пор не знаю, что делать?

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

Что делать, если мне слишком тяжело

Возьмите паузу и примите наконец это решение: откажитесь от роста в управленческой ветке. Спросите себя: «Зачем мне это?» Если нет хорошего ответа, от которого наступает успокоение и тепло разливается по телу, примите другой хороший ответ: «Это не для меня, и это нормально». Можно быть уникальным специалистом с невероятной экспертизой, и мир будет счастлив, что вы у него есть, а вы будете счастливы, что сами приняли правильное решение.

Пять секунд мотивации

Счастливым тимлидом быть можно. Достаточно честно вглянуть в глаза реальности, принять её и взять ситуацию в свои руки.

Реальный опыт

Всё описанное выше — мой опыт и пройденный путь. Было ли сложно? Конечно. Самое сложное — продолжать делать, пока не получится, несмотря на регулярно посещавшие мысли, что мне это просто не дано. Можно ли быть счастливым руководителем? Точно можно.

Автор: Наталья

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js