Часть вторая. Производство

Санитары к двери

Из мемов бюро: «Почему программисты ненавидят работать с чужим кодом?»
Из мемов бюро: «Почему программисты ненавидят работать с чужим кодом?»

Бюро сломалось в четверг, в марте девятнадцатого года, в девять сорок утра. Сломалось не всё сразу, а по очереди.

* * *

В девять сорок упал хостинг.

На нём жили сто шестьдесят клиентских сайтов из семи городов: от крепежа Дёмина, с которого бюро когда-то начиналось, до сайта строительной группы с калькулятором ипотеки, кабинета для оператора вагонов и рыболовного «Таки». Хостинг был хороший, проверенный, шесть лет без единого сбоя.

Серверами в бюро ведал Ксор. Резервные копии он делал каждую ночь, исправно, по расписанию, и хранил их у того же провайдера, только в другом дата-центре. Копию на другой площадке, у другой компании, Ксор предлагал ещё осенью и принёс Фазу смету: тридцать тысяч в месяц. Осенью бюро держало семь городов на одном бюджете, и Фаз резал всё, что не горело. На смете он написал «после Нового года». После Нового года он про неё не вспомнил, а Ксор не напомнил: решение было не его. Максим и Лёша тем временем полгода спорили, нужна ли копия вообще. Максим считал, что надо, Лёша — что не надо, и каждый раз, когда один соглашался, другой менял мнение. Спор шёл на кухне, а смета лежала у Фаза в столе.

В девять сорок у провайдера легли оба дата-центра. Сразу.

Ксор в этот момент третий день был в Боливии. Телефон у него, как всегда, когда он в Боливии, был выключен.

* * *

В девять пятьдесят позвонил Дёмин.

— Сайт лежит.

— Знаем, Виктор Степанович. Хостинг.

— Мне не хостинг нужен. Мне звонки нужны.

К десяти тридцати позвонили ещё двадцать три клиента. Москва, Ростов, Екатеринбург. Иркутск позвонил первым из всех: у них шёл третий час дня, и заметили там раньше всех.

* * *

В одиннадцать выяснилось, что Максим на больничном. Лёша был на месте, но без Максима не мог восстановить то, что они делали вдвоём, потому что пароли от половины серверов знал Максим, а от другой половины — Максим тоже, но записал их Лёша, и записал так, что прочитать мог только Максим.

В одиннадцать двадцать у Гоши сгорел монитор. Не погас — сгорел, с дымком. Гоша сидел перед ним и смотрел на дымок, как на неудачный макет.

В двенадцать к Фазу зашёл Белк и радостно сообщил, что продал тульскому производителю одежды интернет-магазин с интеграцией с маркетплейсами за две недели.

— У нас нет интеграции с маркетплейсами, — сказал Фаз.

— Будет, — сказал Белк.

— Кто будет делать?

Белк посмотрел в сторону кабинета разработчиков, где Лёша один сидел над чужими паролями, и ничего не ответил.

* * *

В час дня Виг отказался сдавать текст.

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

На кого он обижен, Виг не объяснил. Позже выяснилось, что на Марго, Мари и Леночку, которые утром втроём, не сговариваясь, напомнили ему про срок.

— Харшоувский комплект, — сказал Виг в коридоре, достаточно громко. — Брюнетка, рыжая и блондинка. Записывают за директором, а напоминают все трое мне.

— Виго, — сказала Марго, не оборачиваясь. — Я тебя убью.

— Таки за что?

— За Хайнлайна.

Больше эту тему в бюро не поднимали.

* * *

В час сорок позвонила Анна насчёт какого-то ГРУ. Фаз сказал, что перезвонит, и забыл.

В два позвонил Аркадий Львович — строительная группа, пункт 4.2 — и сообщил, что у них сегодня в семнадцать ноль-ноль стартуют продажи четвёртой очереди, реклама оплачена, и что если к вечеру сайта не будет, он подаст претензию.

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

В два тридцать Мари принесла расчёт. Если сайты не поднимутся до завтрашнего утра, три клиента теряют в сумме около девятнадцати миллионов, потому что у них на сайтах сделки, а не визитки. Бюро ответственности по договору не несёт: сбой у провайдера. Но три клиента из ста шестидесяти в следующий раз пойдут к тому, у кого хостинг не падает, и расскажут об этом ещё тридцати.

В два сорок Фаз нажал кнопку интеркома.

— Леночка. Водочки. Папиросы. И пару санитаров к двери.

* * *

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

— Сергей Алексеевич, санитаров куда? К какой двери?

— К моей.

— Хорошо.

Через полчаса в дверь бюро позвонили двое в синих куртках. У одного в руках были сложенные носилки. Леночка вызвала их честно, через частную службу перевозки лежачих больных — первое, что нашлось в поиске по слову «санитары». Оплатила с корпоративной карты, по прайсу службы: вызов плюс час работы.

Фаз вышел в коридор и посмотрел на них. Они посмотрели на Фаза.

— Кто больной? — спросил тот, что с носилками.

Фаз открыл рот и закрыл.

* * *

Второго санитара звали Рома, и до того, как пойти возить лежачих больных, он шесть лет работал системным администратором на хлебозаводе. Хлебозавод закрылся, админы стали не нужны, а носилки нужны всегда. Рома заглянул Лёше через плечо, посмотрел на записанные пароли минуты три и сказал:

— Это не шифр. Это раскладка. Он писал в русской, а думал в английской.

Через сорок минут Лёша с Ромой подняли ночные копии Ксора с ноутбука Максима, к которому у Лёши был доступ: Максим, как выяснилось, на всякий случай скачивал их себе раз в неделю и никому об этом не говорил, чтобы не проиграть спор. Последней копии было пять дней: правки за эти пять дней на сорока сайтах потом две недели восстанавливали руками по переписке с клиентами. Ещё через час сто шестьдесят сайтов переехали на запасную площадку, которую Рома назвал «нормальной».

Первому санитару делать было нечего, а час был оплачен, и он спросил, нельзя ли чем-нибудь помочь. Ему отдали сгоревший монитор Гоши — отнести в машину и по дороге сдать на утилизацию. На это ушло четыре минуты. Остальные пятьдесят шесть он просидел в приёмной и объяснял Леночке, как правильно поднимать лежачего, чтобы не сорвать спину. Леночка записала.

Сайт Аркадия Львовича открылся в шестнадцать пятьдесят. Продажи четвёртой очереди стартовали в семнадцать.

* * *

Вечером, когда все разошлись, Фаз остался в бюро один.

Сидел над листком, на котором Мари написала девятнадцать миллионов. Цифра не наступила, но была. За ней стояли три компании и люди в них, которые утром пришли бы на работу и узнали, что вчера у них ничего не продалось, и никто бы им не объяснил, при чём тут какой-то хостинг в чужом дата-центре.

Потом он достал из стола осеннюю смету Ксора. Тридцать тысяч в месяц. Над цифрой его собственным почерком: «после Нового года».

Под резолюцией он дописал три строчки: резервная площадка у другой компании; пароли в сейфе; второй человек на каждую систему. И четвёртую, отдельно: «Отложил я. С. А.».

Из этих строчек потом вырос регламент на четыре страницы. Первым пунктом в нём стояло, что расходы на резерв директор не откладывает. Олег, вписывая пункт, спросил, не слишком ли это лично для регламента. Фаз сказал, что в самый раз.

Ксор вернулся в понедельник, прочитал смету с четырьмя строчками, сложил её вдвое и унёс к себе. Через неделю ночные копии лежали у трёх разных компаний в трёх странах, и где именно, знали он, Лёша и сейф.

* * *

Интеграцию с маркетплейсами для Тулы Максим, выйдя с больничного, сделал за три недели вместо двух. Белк позвонил клиенту и извинился сам.

Наутро после того четверга Марго внесла в список подрядчиков новую строку: частная служба перевозки лежачих больных. Контактное лицо — Рома. Примечание: «Админ. Пароли».