9 декабря 2018

Два мира или “инженерам есть, что сказать”. О различных типах сложных задач и процессах связанных с ними

Управление разработкойУправление проектамиКарьера в IT-индустрии
Я думаю руководители отделов IT департамента согласятся со мной, что иногда кажется, что мы находимся на границе двух миров, живущих по разным законам, в разных временных ритмах, а нам приходится жить в обоих этих мирах. И, если трансляцию “образа жизни” сверху вниз, от вышестоящих менеджеров до инженеров, мы, в силу своих должностных обязанностей, осуществляем регулярно, то вот в обратную сторону — увы…

Поэтому этот пост о том, что я, как инженер, хочу сказать нашим дорогим менеджерам и тем, кто считает их “образ жизни” единственно верным. :)

Планирование, диаграммы ганта, “следование процессу”, дисциплина, deadline, распорядок, “два раза не объясняю одно и тоже”, “не успел, значит плохо планировал”… — знакомые вещи? Это сущности и методы “мира менеджеров”. Понятно, что где-то больше, где-то меньше и вообще упрощение, но речь не об этом мире. Он безусловно важен. Его методы отлично работают во многих вещах. Но есть огромный пласт задач, где ничего из этого не работает, а работает совсем другое, подчас противоположное.

Поясню свою мысль.

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

Complex задача — это задача, состоящая из многих элементарных подзадач. Элементарных в том смысле, что результат известен, известны методы решения, количество ресурсов, которые они требуют и время на их выполнение. Сложность complex задачи заключается в том, что требуется, например, участие различных людей, специалистов, команд и их действия надо согласовывать, но каждое конкретное действие вполне понятно и предсказуемо. Хороший пример – строительство дома. И вот здесь отлично работают приемы “мира менеджеров”.

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

Новый софт, новая “фича”, новый баг, настройка нового оборудования, построение новой архитектуры, тестирование новых решений, создание нового продукта… Не обязательно, чтобы это было никому не известно. Достаточно, что это не известно команде и не так просто найти документацию.

Конечно, «мир инженера» состоит не только из этого, есть здесь и complex составляющие, но это существенная его часть, или вы не совсем инженер.

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

  • инженеру нужно погрузиться в задачу. Он не может отвлекаться каждые 15 минут. Иногда, погружение может быть настолько всепоглощающим, что он может не спать или плохо спать, “страдать” задачей несколько дней или недель или месяцев. Это важное качество сильного инженера. Он не может успокоиться пока не решит. Ему нужно дать время, дать возможность сосредоточиться и, возможно, исключить на какое-то время из различных периодических процессов.
  • в данных условиях странно требовать от инженера, чтобы он строго жил по расписанию. И это понимают в НИИ (во всяком случае в том, где работал я), это понимают, например, на Физтехе – и там и там свободное посещение.
  • понятно, что слово “дисциплина” при решении задач такого типа здесь уже имеет другое значение. Это уже даже не дисциплина, а скорее страсть. Творческий процесс, мозговые штурмы, обсуждение, заинтересованность в результате – вот клей, заменяющий дисциплину при решении этого типа задач.
  • понятно, что все временные зависимости здесь так же существенно ослабевают, трудно вставить difficult задачу в строго регламентированный временной процесс
  • поощряется не то, как гладко (с соблюдением всех условностей и процедур) выполняется задача, а просто сам факт решения задачи. Слова, типа “вы задержались на 2 дня” здесь не должны применяться. Если сроки важны, то нужно просто определиться, в какой момент остановиться и не тратить больше ресурсов.
  • нельзя судить человека за то, что он не смог решить задачу. Даже у очень сильного специалиста ход мысли может пойти в др. сторону и он может потратить много лишнего времени. Во многом, решение подобных задач – это перебор вариантов, и не факт, что вы быстро выберете правильный.
  • если инженер застрял, нельзя оставлять его одного – нужна помощь или лидера или всей команды.

Совсем другой мир, правда?

Значит ли это, что совсем нельзя планировать? Нет не значит. Обычно, можно оценить вероятность выполнения и время, но это лишь вероятность и лишь оценка.

Значит ли это, что в отделе должна царить анархия? Нет не значит. В отделе, конечно, должны соблюдаться процессы complex задач, которые есть в отделе и в которых участвует подразделение. И это задача руководителя суметь совместить эти два мира.

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

Умение решать complex задачи более доступно. Здесь тоже важна склонность характера, но если эта склонность есть, то овладеть навыками не так сложно.

Вы можете быть вполне успешным менеджером на своей ступеньке иерархии и не обладая навыками решать difficult задачи. Таких позиций много. Но по-настоящему лидером в IT мире, как мне кажется, стать будет сложно.

Вот почему.

  • такой менеджер часто не понимает, а от того и не ценит людей, способных решать difficult задачи. А значит, у него не будет сильных инженеров.
  • менеджеру безусловно в общем случае приходится решать difficult задачи. Например, определяться с целями, или создавать работающие процессы. Это difficult задача. Беда в том, что менеджер может думать, что это просто, в силу того, что не видит глубины проблемы и создает цели и процессы “на лету”, но при детальном рассмотрении они не работают.

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

Если же для вас закрыт мир difficult задач, то, я бы посоветовал научиться любить и ценить команду из другого мира и этот мир отблагодарит.
Теги:Процессы в ITуправление проектамиуправление задачамиуправление людьми
Хабы: Управление разработкой Управление проектами Карьера в IT-индустрии
+22
8,1k 44
Комментарии 22
Похожие публикации
Рекрутмент в мессенджерах
30 ноября 2020БесплатноOTUS
Введение в цифровой дизайн
30 ноября 202032 340 ₽Нетология
IT-Recruiter
22 декабря 202040 000 ₽OTUS
Product Manager IT-проектов
17 января 202160 000 ₽OTUS
▇▅▄▅▅▄ ▇▄▅