Что убивает процесс разработки?

2013-10-23

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

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

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

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

Итак, пять рабочих ситуаций, которых лучше бы не возникало:

  • Недопонимания/споры среди членов команды. Продуктивность падает на 12%, качество  на 15%.

  • Недопонимания/споры в среде менеджеров. Продуктивность падает на 13,5%, качество — на 18,5%.

  • Неадекватное общение с акционерами/инвесторами. Продуктивность падает на 13,5%, качество — на 18,5%.

  • Увольнения/сокращения ключевых сотрудников. Продуктивность падает на 15,7%, качество — на 21,7%.

  • Слишком плотный график работы. Продуктивность падает на 16%, качество — на 22,5%.

Процентные значения основаны на исследовании Capers Jones&Associates «Оценка существующих методов и практик в разработке ПО», в ходе которого было проанализировано около 18 000 проектов разработки. 

Начнём с самых опасных для производительности условий.

 

Слишком плотный график работы

Он случается, если:

  • дедлайны спускаются сверху

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

  • используются неофициальные методы оценки.

Чем грозит слишком плотный график работы?

  • слабо сформированными требованиями и слишком широкой областью задач

  • построением неоптимальной архитектуры

  • написанием некачественного кода

  • низким уровнем контроля над кодом и тестированием

  • низким количеством проведённых инспекций кода

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

 

Разногласия между людьми

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

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

Команда работает хорошо только тогда, когда они решают общую проблему, а не проблемы друг друга.

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

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

 

Неадекватное общение с акционерами/инвесторами

Под неадекватной связью с акционерами/инвесторами обычно понимается:

  • получение недостаточной информации о бизнес-целях

  • разработка ПО непрозрачным образом.

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

 

Потеря ключевых сотрудников

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

  • уходу ключевых сотрудников из организации

  • сокращению ключевых сотрудников

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

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

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

 

В качестве итога

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

И, конечно, никакой тимлид не позволит таким ситуациям возникнуть внутри своей команды.

Перевод: Люся Ширшова. По материалам AcceleratedDevelopment


Читайте также: 

Кто такой IT-менеджер?

4 вещи, которые я понял слишком поздно. Откровения разработчика

Работа в лучших компаниях мира. Blizzard Entertainment