Разработчик пришел с проблемой

Назовем разработчика Алексей. Пару месяцев назад произошел сбой в базе данных. Раньше таких сбоев не было. Леха нашел проблему и создал тикет. Менеджер решил, что повторение крайне маловероятно, да и систему по-тихоньку переписываем. Поэтому решили ничего не делать

На прошлой неделе сбой повторился как раз в тот момент, когда Лешка был на дежустве. Пришлось опять (прописью: опять) чинить руками. Пейждер звонил не переставая. Леха расстроился, что ошибка же была найдена. Можно было починить и этого бы не произошло. Как научиться объяснять менеджеру, что некоторые вещи не стоит откладывать. Главное: как самому понять, какие вещи не стоит откладывать?

Начнем с причины. Почему менеджер отказал? Это, кстати, был не я. Я просто люблю коучить людей. Менеджер отказал основываясь на многолетнем опыте и довольно глубоких технических знаниях. Грубо говоря — интуиция. Когда встречаются 2 интуиции, то побеждает авторитет. Чего не было у Алексея? У Алексея не было авторитета и данных.

Какие данные в такой ситуации можно собрать, как оценить вероятность повторения сценария? Раньше такого ведь не было.

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

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

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

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