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

Когда ты работаешь в IT, случаются неприятности. Я проработал в сфере технологий двадцать лет и ежедневно делаю ошибки. Большинство ошибок незначительны и выявляются с помощью тщательного тестирования и экспертных оценок. Несколько раз последствия были масштабными и запоминающимися. И под «незабываемыми» я имею в виду, что они чуть не вызвали у меня посттравматическое стрессовое расстройство. Каждый человек в ИТ, который несет какую-либо ответственность, совершал ошибки. Если разработчик заявляет о безупречной репутации, он либо лжет, либо заблуждается.

Вот шесть стадий эмоций, когда вы отправляете плохой код в производство.

Холод

Когда ад вырвется наружу с самого начала, сразу переходите к Panic.

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

Любопытство

Вы начинаете видеть в своем почтовом ящике некоторые, казалось бы, несвязанные предупреждения. Время отклика веб-сайта замедлилось, а количество звонков увеличилось. Любопытно. Вы задаетесь вопросом, что происходит, но заверяете себя, что это никак не связано с внесенными вами изменениями службы REST.

Беспокойство

Вы чувствуете себя довольно расслабленным, пока ваш менеджер не поговорит с вами. Она хочет знать, связана ли эта проблема с только что произошедшим развертыванием, посеяв семена сомнения. Ты сделал это? Вы начинаете с жаром рыскать по бревнам.

Паника

Ваш технический руководитель связывается с вами, подтверждая, что на самом деле проблема вызвана именно вашим изменением. Легко сходить с ума и бесцельно карабкаться в полном поту. Вам нужно сохранять самообладание и быстро справляться с проблемой. Следует ли отказываться от кода или отказываться от него, исправляя его? Вам нужно очистить неверные данные в базе данных? Именно в это время вы обращаетесь к старшим разработчикам и техническим руководителям. Они уже проходили через это раньше и могут дать рекомендации.

Облегчение

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

Решать

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

Если вам интересно, как старший разработчик переживает эти этапы? Хотя они могут прогрессировать одинаково, каждый шаг должен быть короче по продолжительности (за исключением решения).

  • Холод: максимум пять минут. Все развертывания считаются виновными, пока не будет доказана их невиновность.
  • Любопытно: очень коротко. Как только ваше любопытство щекочет, вы начинаете беспокоиться.
  • Обеспокоенность и паника. Эти две фазы объединяются для максимального дискомфорта, пока вы колеблетесь между ними. Со временем Panic не достигает уровня полной атаки. Они усилены, потому что теперь вам нужно предоставлять обновления статуса при кризисном звонке. Каждые десять минут.
  • Облегчение: недолгое. Ваш менеджер звонит вам. У них есть вопросы. Тебе лучше получить ответы.
  • Решимость: если вы не можете быть хорошим примером, сделайте предупреждение другим. Как старший разработчик или технический руководитель, ваш менеджер поручает вам разработать процедуры, чтобы это «никогда не повторилось». Если ваша ошибка гарантирует «королевский» статус, ваши коллеги будут напоминать вам об инциденте в течение многих лет.