Сказка на ночь.ГАРПия или конкуренция за ресурс

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

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

Смена СУБД и изменение архитектуры привело к возникновению ряда проблем с производительностью и устойчивостью/надёжностью работы системы.

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

  1. Исходная конфигурация аппаратного обеспечения
  2. Настройка аппаратной(серверной) части и ОС/СПО.
  3. Настройка серверного ПО (СУБД in memory, серверов приложений, межсерверных сетевых взаимодействий)
  4. Адаптация унаследованного кода под изменившуюся архитектуру.
  5. Пользовательские настройки системы (на уровне Прикладного ПО)

Для комплексного анализа сложившейся ситуации и решения выявленных технических проблем создаётся группа высокопрофессиональных специалистов разного профиля. Для простоты будем называть её ГАРПия (Группа Анализа и Решения Проблем).

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

Что меня заинтересовало в этой ситуации?
Организационная часть проблемы.

Предыдущее рассмотрение ситуации делалось из роли Технического специалиста (инженера) в широком смысле этого слова. Теперь попытаемся переключиться в роль Организатора(менеджера) и посмотреть на ситуацию с другого ракурса.

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

Настройка и развёртывание серверной части системы находится в области ответственности Заказчика. Проблемы возникают в момент проведения Нагрузочного Тестирования (НТ).

Группа анализа и решения проблем, простите, ГАРПия, состоит из технических специалистов и Руководителей Проекта со стороны Исполнителя и Заказчика.

Со стороны Заказчика отсутствует формально выделенный ответственный за процесс решения проблем.

Существует явный конфликт интересов между двумя менеджерами Исполнителя. Один из них отвечает за работоспособность технической части (назовём его Тех.менеджер) и заинтересован в скорейшей стабилизации системы . Второй отвечает за функциональность/бизнесовую часть (назовём его Функ.менеджер) и соответственно ответственен за тестирование/приёмку бизнес функционала.

Поскольку работа ГАРПии состоит из череды экспериментов, требует постоянного изменения настроек/кода системы и проведения Нагрузочного Тестирования, это неизбежно мешает Фунциональному Тестированию.
Да, физически система одна, НТ и ФТ проводятся на ней, и это вызывает постоянную конкуренцию за ресурс.

При этом, довольно забавно наблюдать, как Функ.менеджер периодически пытается встать в роль Тех.специалиста/Архитектора и влиять на принятие технических решений, за реализацию которых он не отвечает, и подозреваю, даже не понимает до конца всех последствия реализации своих пожеланий.

Тех.менеджер заказчика, грамотный технический специалист, хорошо ориентируется в своей области, но обладает двумя особенностями.
Во первых, периодически предлагает настолько радикальные технические решения, что даже у профессиональных специалистов Исполнителя которые привыкли “рвать зубы через задний проход” , они вызывают широкий спектр эмоций. От искреннего удивления, до полного неприятия.
Во вторых, с точки зрения организации процесса он проповедует режим полного аджайла. Формализация процесса не нужна, есть проблема, есть группа специалистов(пул ресурсов) .
Кидаем в чат скопированный кусок отчета/текста из специализированной программы диагностики состояния системы. Возьмите и решите. Такой подход обычно называется так: “ты профессионал/ка, реши проблему” или “сделай мне приятно”.
В целом, подход вполне рабочий для малых групп и небольшого количества проблем. Но в данном конкретном случае, размер команды ГАРПии вышел за эмпирический предел “мы можем накормить команду двумя пиццами”, а количество проблем требует более формализованного подхода с явным выделение очереди задач, описанным алгоритмом/методом обработки и передачи результата работ.

Какие возможные варианты развития событий я вижу?

К сожалению, на этом месте я понял что формат сказки грозит перерасти в производственный роман, а трекер pomodoro советует сделать перерыв. Поэтому первую серию на этом закончим.

Продолжение >> Сказка на ночь.ГАРПия или в чем проблема