99.9999% времени доступности - это иллюзия
Звонок был слабый, но мои глаза мгновенно распахнулись. Прежде чем я смог осознать, откуда шел звук, мой телефон уже был в моих руках.
Даже во сне, уведомление * ping * от Google Hangouts всегда вызывало ту же рефлекторную реакцию. Прошло некоторое прежде чем я понял, что экран телефона ярко светит не в лицо.
Я несколько раз моргнул, чтобы настроить яркость.
2:16. “У меня есть время”, - заметил я с некоторым облегчением. Даже “жаворонки” не будут в сети, по крайней мере, до 4 утра. Это дало нам приблизительно 2 часа - не много, но лучше, чем многие другие сценарии, которые бы могли меня разбудить.
«Я буду в сети в 5»
Я посылаю ответ, прежде чем отбросить свой телефон в сторону, безучастно глядя в потолок, вздохнув со смирением. Мне не нужно было читать сообщение, чтобы знать, что это было какое-то изменение: у нас есть чрезвычайная ситуация.
Несмотря на мое внутреннее ворчание, я стал шарить рукой под кроватью, чтобы нащупать ноутбук, который я держал там для подобных случаев. Если повезет, я смогу остаться в моем коконе из одеяла, и это будет быстро разрешено с небольшим обсуждением. Может быть, я мог бы даже оставить еще один час для сна.
5:25 утра. Я обнаружил, что я сижу на диване в пижаме с одеялом на плечах. Мой ноутбук включен, на зарядке. Наши инженеры, работающие дистанционно из Германии и России, были подключены к телефонной конференции, фактически ломая головы при диагностике проблем.
Мой телефон звонит. Это мой специалист по технической поддержке - единственный человек, назначенный работать в раннюю утреннюю смену.
«Мне нужно сделать резервную копию. Сейчас я удаленно зарегистрирован на 3 клиентских серверах. Я не знаю, что с ними случилось, но я не нашел исправления. Я думаю, что произошел какой-то системный сбой. Каждые несколько минут поступает огромное количество запросов на поддержку. И телефон звонил без остановок».
2 часа ночи. 5 утра. 9 вечера. 11 вечера. Будни. Выходные дни. Независимо от того, насколько поздно или рано возникала ситуация, команда научилась не извиняться, когда они привлекали меня, по моей же просьбе. В качестве самой высокой точки эскалации ситуация должна была выглядеть довольно плохо для меня, чтобы получить телефонный звонок в первую очередь. Формальности были бы пустой тратой времени.
Иногда это была ложная тревога. Иногда это было быстрым решением. Порой это была большая проблема, для которой нет решения или даже правильного диагноза. В редких случаях программное обеспечение начнет работать самостоятельно, по-видимому, фиксируя себя, без очевидного объяснения.
«Наши инженеры работают над этим»
Ситуация всегда сводилось к некоторой версии выражения “наши инженеры работают над этим”. Но действительно, часто было трудно предложить большего контекста, чем этот. Надеюсь, сегодня утром не потребуется подробное объяснение.
8:50 утра. Я быстро улыбаюсь, когда коллега приветствует меня бодрым «доброе утро», когда я быстро иду мимо кухни к моему рабочему месту.
- Статус: восстановлена общая функциональность
- Воздействие: 36% затронутых клиентов
- Корневая причина: TBD
Офис был в 10 минутах езды от дома. Близость означала, что я никогда не был в режиме оффлайн слишком долго. Я ценил этот факт более, чем что-либо еще, в эти ранние утра.
Чуть позже, когда 10 минут стало слишком много, чтобы быть в автономном режиме - я переключил вызовы на конференцию на свой мобильный телефон, чтобы я мог продолжать руководить, пока я ехал на работу.
Подавляя зевок, я добираюсь до своего стола, ставлю свой ноутбук и подключаюсь ко второму монитору, коротко кивая моей команде в качестве приветствия.
«Дайте мне обновление. Скажи мне что-нибудь хорошее»
Мой разум начал перебирать список вещей, которые нужно было сделать час назад. Пытаясь сосредоточиться на своих мыслях, я откусываю от батончика гранолы и перестаю жевать, услышав звук обновления.
«Хорошие новости. Мы снова в сети. Вряд ли много людей заметило. Мы выяснили, как заставить это снова работать и обработали всех клиентов, которые звонили. Плохая новость. Не можем сказать, кто еще пострадал, если он не обратился ... и мы до сих пор не знаем, почему это произошло».
Чуть позже часа дня заглядывает менеджер учетных записей. Сегодня утром клиент не смог получить техподдержку. Он оставил голосовую почту, но не получил ответа. Это было неприемлемо.
Специалист технической поддержки обращается ко мне с оборонительным выражением. Разработчики работали над долгосрочным решением. Слишком много телефонных звонков. Этот клиент был исправлен. Почему менеджер учетных записей не начинает работу в 5 утра и возвращает вызовы?
Внутренне я вздыхаю. Внешне я улыбаюсь. Время доступности было под моей ответственностью. Это поставило меня прямо между «техническим» и «нетехническим» персоналом. Хрупкая позиция.
Я сравнил свой отдел в отделение неотложной помощи. Во-первых, всегда прекращайте кровотечение. При необходимости используйте лейкопластырь в качестве кратковременного решения. Стабилизируйте клиента. Найдите основную причину. Разработайте профилактические меры, чтобы избежать повторяющихся ошибок и сбоев. Промойте и повторите со следующей «чрезвычайной ситуацией».
После небольшого перерыва я начинаю разрабатывать обновление с отладкой, которое будет разослано клиентам и заинтересованным сторонам. У меня болит голова от недостатка сна; мне требуется почти 2 часа, чтобы завершить формулировку и отправить его на утверждение генеральному директору.
«Вы по-прежнему здесь?»
Я смотрю из своего ноутбука на источник голоса в дверном проеме: коллега из другого отдела. Я устало улыбаюсь и отвечаю, что собираюсь уйти в течение часа.
Это было 6 вечера, и я наконец добрался до своих «обычных» писем. Мне сильно хотелось бы оставить их без ответа, но я знал, что пренебрежение ими приведет лишь к бесконечному наверстыванию.
Это был не типичный день. Но это было и не редкое явление. За обещанным 99,9999% времени безотказной работы стояли бесчисленные ночи и дни напряженного стресса, безумные конференц-звонки и 16-часовые дни - все это время позволяло создавать атмосферу спокойствия.
Мораль истории? Не забудьте сказать спасибо членам команды, которые поддерживают работу вашего программного обеспечения.