Tuesday, September 26, 2017

Организация отдела разработки с "нуля"

Видеозапись моего выступления:
Интернет версия слайдов моего доклада

Введение

На чем основан пост?

Свой пост я основываю более, чем на 10 летнем опыте организации различных видов деятельностей и групп:
  • Как преподаватель я организовывал деятельность студентов по достижению цели прохождение курса
  • Как бригадир бригады монтажников я организовывал деятельность по реконструкции сетей
  • Как заказчик я организовывал работу подрядчиков
  • Как руководитель отдела тестирования я занимался организацией работ по достижению необходимого уровня качества проектов в разработке
  • Сейчас как руководитель команды разработки я занимаюсь организацией работ по созданию проектов.
Я постарался сделать выжимку из своих наблюдений и сделанных на их основе выводах. Хочу предупредить: тема обширная и материалов написана куча, поэтому я вам расскажу ключевые вещи. Если у вас в результате возникнут противоречивые вопросы, сомнения и бурление - это хорошо. Задайте мне их по почте или через соцсети.

Определимся с понятиями

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

Почему так сложно начать с нуля?

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

Первое облегчение:

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

Основная часть

С чего же мы начнем?

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

Что следующее?

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

Как двигаться к цели?

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

Вы обсудили задачи, обсудили этапы…

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

Когда же происходит формирование отдела?

Формирование отдела происходит по мере реализации проектов. Не нужно сразу описывать подробно каждый миллиметр пути. Так вы ничего не сделаете. Чрезмерное планирование топит проекты. Идеально, если закрепление и детализация процессов происходит по необходимости. По мере ввода новых людей вы:
  • закрепляете договоренности;
  • фиксируете  и утверждаете планы;
  • Закрепляете должностные обязанности и регламенты.
На мой взгляд, задумываться о формировании отдела стоит по ходу роста портфеля проектов. Пока у вас только один проект, вам бы только его потянуть. Вы еще слишком слабы, чтобы формализовать процессы и набирать людей.
С другой стороны, планирование, регламенты и описание должностных инструкций создают рамки и позволяют фиксировать договоренности. Они дают возможность снизить зону неясности в головах у людей.

Матрица vs Иерархия vs Эджайл

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

Этапы роста отдела

Сотрудник.

Пока вы один, возможно вам и не нужно больше документации и всего остального. Вам бы проект сделать. Просите людей только в случае завала задачами.  Недостаток задач хуже, чем их избыток. Когда не хватает задач, теряется производительность, люди начинают заниматься ерундой. Считают, что им платят за ничего неделание, и когда приходит работа, им сложно вернуться в прежнее русло.
Когда набирать людей? Мой рецепт следующий: Если у вас работы больше, чем на 2-3 месяца - вам нужен помощник. Когда у вас работы на 1-1,5 недели, брать людей не стоит.

Команда

Команда начинает формироваться после 3-4 человек. Тогда выявляется лидер. Но помните, что чем больше людей, тем сложнее договориться. То, о чем 2 человека договаривались за 1 час, 3-4 человека будут договариваться 1-2 дня. Уже теряется контакт, возникают конфликты и недопонимание. Чем больше людей, тем меньше вы будете программировать и тем больше будете общаться.
Когда  под вами будет больше 6 человек, про программирование вообще можете забыть. До 6 человек у вас скорее всего не будет потребности в тестерах, дизайнерах, аналитиках. Все это вы будете успевать делать командой.
На этапе 6-7 человек уже возникает необходимость формализовать процессы, прояснять договоренности, вводить регламенты. Зачем это нужно? Очень просто. Чтобы беречь голосовые связки. Когда вы начнете рассказывать одну и ту же вещь из раза в раз, и люди будут задавать одни и те же вопросы, - это значит, что пришло время регламентов, и вам нужно начинать фиксировать процессы. Не бойтесь ошибиться. О плохо проработанных процессах вам скажут сразу.

Отдел

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

Департамент

Департамент состоит из 15 человек и более. В нем уже присутствуют 3-4 команды. Возникает потребность в архитекторах, команде эксплуатации.

Жизненный цикл команды:

По сути можно выделить пять этапов жизненного цикла отдела:
  1. Зарождение. Только возникла идея и появился первый человек.
  2. Рост. Команда растет. Тут главное не стопорить сильно процесс. Но и не давать ему слишком большого роста.
  3. Стабильность. Команда стабилизируется. Будьте осторожны. Вы можете потерять темп. Команде периодически нужно вбрасывать новые челленджи.
  4. Стагнация. Искать что вас тащит вниз. Изменяться. Решать проблемы.
  5. Умирание. Команда загибается. Что делать? Обновлять команду. Менять команду. Уходить.

Руководящая позиция

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

Проблемы:

На мой взгляд, в процессе организации отдела проблемы следующие:

Потеря контроля

Потеря контроля - это нормальная ситуация. На самом деле, вы не можете контролировать каждого. А по мере роста контроль теряется. Важно организовать структуру, которая будет стабилизировать сама себя. С вашим участием конечно. Чем больше вы контролируете структуру, тем слабее она становится. Помните про 5-7 фокусов внимания? Вот на таком уровне и будет производительность вашей организации, если вы будете держать все под контролем.

Неформальные лидеры и оппозиция

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

Бунты

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

Мудаки и психопаты

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

Какая может быть профилактика:

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

Выводы

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

Литература

Хочу посоветовать вам литературу, что бы развить тему поста:
  • Cognition in the wild - книга когнитивного психолога о том как устроено управление военным судном (управление экипажем, навигация, психология команды). Не секрет, что разработка софта очень похожа на строительство и судоходство. Поэтому эта книга поможет вам разобраться с понятиями.
  • Being geek - книга руководителя разработки Netscape, который прошел от инженера до менеджера и описывает этот опыт. Книга рассказывает разные этапы роста (собеседования, общения с коллегами и прочее).
  • Джеффри Пфеффер, Власть, влияние и политика в организациях‎ - очень крутая книга о том что такое управление, политика, влияние и власть. О том как их получают, как их теряют и что с этим делать.
  • Тайна пассионарности, Льва Гумилева - книга известного исследователя история о том как устроены нации. Кто такие пассионарные личности, как развивается группа, какие у нее этапы жизни и с чем они связаны.
  • Snakes in Suites - книга о психопатах и социопатах в рабочей среде. О том почему их много в современных компаниях и айти среде. О том чем они опасны, как их выявлять, отсеивать и что делать, если вы работаете с одним из них.
  • Не работайте с мудаками - книга про то как строить взаимоотношения, о том чем опасны мудаки и неприятное общение. Что с этим делать?