Про армейские принципы

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

Идея находит своё применение в армии. Как хороший командир принимает решение и реализует его? Сначала он собирает информацию, разведданные, выслушивает разные мнения и обсуждает возможные решения. Это период демократии, в этот период подчиненные могут обсуждать решения, влиять на их принятие. Потом командир принимает решение, и поступает приказ. С этого момента демократия кончается. Пункт 43 устава внутренней службы вооруженных сил РФ гласит:

Приказ командира (начальника) должен быть выполнен беспрекословно, точно и в срок. Военнослужащий, получив приказ, отвечает: "Есть" – и затем выполняет его.
При необходимости убедиться в правильном понимании отданного им приказа командир (начальник) может потребовать его повторения, а военнослужащий, получивший приказ, – обратиться к командиру (начальнику) с просьбой повторить его.
Выполнив приказ, военнослужащий, несогласный с приказом, может его обжаловать.
О выполнении полученного приказа военнослужащий обязан доложить начальнику, отдавшему приказ, и своему непосредственному начальнику.
Подчиненный, не выполнивший приказ командира (начальника), отданный в установленном порядке, привлекается к уголовной ответственности по основаниям, предусмотренным законодательством Российской Федерации.

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

У демократии, помимо проблем с эффективностью, есть проблема с ответственностью. Кто отвечает за коллективно принятое решение? Тут же все просто, за выполнение приказа отвечает подчиненный, за последствия выполнения отданного приказа – командир (это, кстати, следующий, 44-й пункт устава).

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

Демократия вредна при реализации решений.

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

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

Несколько лет назад Алексей Могильников ввел в Лайте роль FeatureLead­-а. ФичаЛид это человек, который головой отвечает за реализацию некоторой фичи, ведет её от идеи до продакшена, через аналитику, проектирование, разработку и тестирование.
Позже эту роль мы ввели в Контур-Бухгалтерии. Это очень полезная роль, т.к. она дает вам человека, который разбирается во всех нюансах новой фичи и болеет за неё.
ФичаЛид готовит задачу к итерации разработки, декомпозирует её, понимает какую часть можно выпустить за итерацию.

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

Его работа в итерации должна выглядеть так:

Разработчик: – Какую сортировку использовать для товаров?
FL: – По весу!

Верстальщик: – Какое скругление делать у выпадашки?
FL: – 2px!

Разработчик: – Я не знаю, как реализовать эту валидациюL
FL: – Выкинь нафиг!

Тестировщик: – Тут блок выровнен по левому краю, а в прототипе по правому!
FL: – Ну и хрен с ним!

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

Такая работа даёт вам массу преимуществ:
1.       Все вопросы в итерации решаются очень быстро, эффективность работы в итерации повышается на порядки.
2.       Вы прокачиваете своих сотрудников и готовите будущих лидеров. Люди учатся принимать самостоятельно решения и обеспечивать их выполнение.
3.       Вы получаете эффективность диктатуры без побочных эффектов в виде тоталитаризма и культа личности. Каждый в своё время побудет диктатором, и каждый в своё время будет отвечать за свои решения.
4.       Вы получаете человека с личной ответственностью, а значит и с хорошей мотивацией.
5.       У вас будет единая точка входа по задаче, что упростит решение множества вопросов.

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

В общем, попробуйте, и вы не пожалеете!

r8m9CnbtdaY