Концерт для инженера с кластером на полтора терафлопса - 6

May 02, 2015 01:55

Опять я с опозданием, но, как говорится, лучше поздно, чем никогда. И ошибочки пойду сейчас поправлю. На следующей неделе обещаю выпуски вовремя: в ночь на вторник и в ночь на пятницу.
Жаль, конечно, что текст, на который потрачено столько сил и эмоций, в большинстве случаев бессилен эти эмоции вызывать. Ну что же, не всем быть пратчеттами.

Глава 6

- Как увольняешься? - Кифа не удержался и среагировал настоящими, не призрачными глазами.

Ольга же выглядела совершенно спокойной, даже расслабленной.

- Ой, ну что ты так волнуешься? Это не конец света. Во-первых, мне ездить сюда неудобно. Это тебе хорошо, у тебя большая часть пар в корпусе поблизости. А мне из кампуса не наездиться. Во-вторых… сказать по совести, не могу я работать с Алексеем. Он ничего толком объяснить не может, у него куча своей работы, да и, честно говоря - неприятный он страшно.

Она оглянулась вокруг - на всякий случай, убедиться, что их разговор по-прежнему приватен.

- То есть, ты утверждаешь, что Алексей ещё отвратнее Краснова?

Ольга взглянула на него удивлённо:

- Отвратнее? Краснов не отвратный совсем.

- Не отвратный? - здесь призрак очень пригодился Кифе.

- Да нет, я не знаю, с чего ты так решил. Я только побаиваюсь его слегка и… стесняюсь отвлекать по мелочам: он же сейчас совсем другим занят.

Кифа скрипнул зубами. В обоих ипостасях.

- Ну ладно, раз он такой душка. Что он-то думает по поводу твоего увольнения? Неужели вот так просто согласился тебя отпустить?

Ольга потупилась.

- Честно говоря, я поторопилась с этим увольнением, пока Краснов в командировке. Если повезёт, успею испариться прежде, чем он вернётся, и мне не придётся ничего ему объяснять. А то если он узнает, он придёт ко мне и будет говорить, говорить, говорить, говорить… И вывернет всё наизнанку.


Кифа взял в руки сначала себя, а потом, уже успокоившись, - Ольгу.

- Ну как же так, Оля? Ты уверена, что не совершаешь ошибки? Может, подождать? Или поговорить с Красновым? - неприятный привкус этого имени кривил губы Кифы сильнее обычного. - У нас большая контора, зачем уходить из-за одного человека?

Ольга мягко отстранила Кифу, чуть надавив левой рукой ему на грудь, а правой ладонью примиряюще коснулась его щеки.

- Не моё это, Киф, прости уж меня. Да и для нас с тобой выгоды большой нет: я злая постоянно, а ты последнюю неделю с митингов не вылезаешь.

Это было правдой. Кифа, увлекшись своим “пожаром”, вспоминал об окружающем мире и личной жизни ближе к вечеру - уже не синему, как ещё совсем недавно, а шоколадно-апельсиновому коктейлю из тьмы и уличных фонарей. Он вздохнул и, взяв Ольгу за ту руку, что касалась его щеки, поцеловал её пальцы.

- Пусть будет, как ты хочешь, Оля. Вот только…

- Да?

- В универе мы с тобой порознь, работать теперь тоже будем в разных местах…

- Ну и что?

“Видимо, именно это и чувствует компьютер, когда его резко лишают питания,” - подумал Кифа через те две секунды, на которые его мыслительный процесс полностью остановился. Ещё через полсекунды у него нашлась версия происходящего, от которой не хотелось немедленно застрелиться.

- Ну как - “что”? Я ж скучать буду.

Ответ ему совершенно не понравился:

- Потерпишь.

Он откровенно уставился на неё широко раскрытыми - от ужаса? удивления? он не вполне осознавал сам - глазами. Ольга рассмеялась:

- Ну ты рожи корчишь! Увидимся мы с тобой обязательно, выходные же есть, в конце концов.

“Ага, только за последние четыре комплекта этих самых выходных мы с тобой виделись ровно один раз, в кафе, из которого ты убежала через полчаса, потому что тебе позвонила мать и сообщила о приезде старшей сестры.”

Делать, впрочем, было нечего. Кифа терпеть не мог скандалов, ему было физически больно от повышенного голоса. Да и мелочно как-то выглядело - из-за такого задавать громкие вопросы, ставить под сомнение опыт полутора лет. В конце концов, многие пары работали и учились порознь - и ничего. Всё же, что-то неясное саднило у Кифы под сердцем. Незаметно, исподволь в этом разговоре сложилось так, что это их встречи - это исключительно его выгода, а для Ольги это лишь обременительная обязанность. “Нет, я несправедлив к ней, - тут же подумал Кифа, - не совсем так. Но то, что мне это нужно больше - правда.” Он подумал о том, что будет, если их встречи в самом деле станут нужны только ему, и содрогнулся. “Может, мне и в самом деле это нужно больше? Как я иначе? Кто я буду без неё?”

Ольга уехала из офиса через неделю. Она начала работать недавно, на неё не было завязано слишком много, так что держать её долго не стали. Краснов, вернувшийся к началу этой последней недели из командировки и обнаруживший дезертирство Ольги, похоже, обиделся. А может, и нет. В любом случае, он теперь удостаивал её едва лишь кивка, заходя к ним в комнату. Ни одного слова он не сказал ей больше, тратя всё своё красноречие на Алексея, который, похоже, испытывал серьёзные трудности на своём участке работ. Кифа чувствовал себя по этому поводу странно: с одной стороны, его всегда раздражало, когда Краснов говорил с Ольгой, а с другой - теперь он знал, что если бы Краснов говорил больше, то Ольга, быть может, и осталась бы. Осталась рядом. “Всё равно он виноват!” - подумал он себе, смутно ощущая некоторую нелогичность, но в пылу эмоций совершенно не смущаясь этим, и поставил Краснову подножку. Тот упал неудачно, сломав переносицу об обшитый стальным уголком косяк. “Жаль, что всего лишь призрак”.

- Ты уже нашла себе новую работу? - спросил Кифа Ольгу в один из этих дней, когда рабочее место её напоминало открытый гроб с телом: проходящие мимо нарочито выражают своё уважение её присутствию, но в остальном полностью игнорируют её существование.

- М-мм… - промычала она в ответ.

- Что? Не очень?

- Ну что сказать? Игроделы под Андроид. “Альтарес” - слышал?

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

- Да-а… - начала было объяснять она, но передумала. - Это ненадолго, может, на год. Я хочу нормально доучиться, мне немного осталось. Потом найду что-нибудь поприличнее.

- Платят-то хоть нормально?

- Так, Киф, так… Сойдёт.

Кифе было очень паршиво: от того, что Ольга увольняется - это выглядело её поражением, да, собственно, им и было; от того, что вместо того, чтобы излучать жизнерадостный оптимизм, она, словно чёрное тело, поглощала весь старательно проецируемый оптимизм Кифы, не нагреваясь при этом ни на кельвин; от того, что сам он, исправляя ошибки с транзакциями в модуле, понадеялся на то, что уж с остальным-то проблем нет - и ошибся, и теперь проблемы ушли на второй круг. “Всё не так”, - думал он.

В следующий понедельник её компьютера уже не было на месте.

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

К своему хитросплетению черт характера Кифа добавил одну новую: лёгкую параноидальность. Он не верил отчётам тестировщиков, вручную проверяя каждый дефект. Он просто физически не мог произнести фразы в духе “работает, как часы”, “гарантирую отсутствие ошибок”, или “оно не упадёт”. Каждый сценарий должен был открутиться на стенде минимум сутки, после чего Кифа неохотно писал-де “проблем не замечено, давайте попробуем выдать эту версию, серьёзных затруднений быть не должно”. Он обедал в полном одиночестве на кухне, избегая компании всех своих прежних приятелей-сотрудников.

Нагрузка в университете - а дело шло к предпоследней сессии - возросла, и с выходными, как Кифа и предвидел, получалось не особенно-то и здорово. Чтобы хоть как-то преодолеть эту разлуку, он писал Ольге каждый день что-нибудь хорошее и светлое.

+796867843690
Солнышко, вставай! Как ты сегодня?
+79686484360
Привет! Нормально.
+796867843690
Осень - что кошка: За листвой гоняется.
Ветер и солнце.
+796867843690
Багровый рассвет.   Пурпурных клёнов плащи на копьях дождя.
+796867843690
За окном неравная битва: солнце отбивается от серых облаков. Скучаю.
+796867843690
К летящим листьям присыпал ноябрь снега.
Хрустят цукаты.

Как там у тебя на новом месте?
+79686484360
Да ничего, терпимо. Стихи красивые у тебя. :)
+796867843690
Я и ещё могу:
Хмурятся тучи.  Яблоня обнажилась в предзимней скорби.
Когда Кифа отметил про себя, что прошла неделя, его тут же поправил внутренний голос: “Три.” И в самом деле: календарь с этим голосом был вполне согласен. Прошлое виделось смутно: да и как иначе можно видеть глазами, которые вечно царапает песок наполеоновского сонного цикла? Ведущий Кифы, Сергей - тот, что отсутствовал, когда в модуле случился кризис - тоже решил сменить место работы. Начальник отдела, похоже, не особенно расстроился (в отличие от Кифы), а просто где-то выкопал первоклассного специалиста по хранилищам данных и тем разгрузил остальных. С его-то помощью Кифа и закончил наконец свою эпопею.

Олег, как и начальник отдела, разменял не так давно четвёртый десяток, и повидал много чего, хотя по большей части держал всё это при себе. Тихий голос, всегда вежливая речь и бесконечная преданность своему делу вызывали у Кифы глубокое уважение. Требовалось ли подсчитать оптимальное количество осколков для текстового индекса, оптимизировать SQL-запрос или что-то узнать о внутренней реализации того или иного механизма Oracle - он всегда знал, в какое место документации смотреть или какой эксперимент провести.

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

+796867843690
Тропинку в снегу теплотрасса проела.
Иней на ветках.
Теперь можно было и поработать. Ответ придёт нескоро и вообще навряд ли. Ольга каждый раз извинялась за неаккуратность в переписке, но ни к каким серьёзным изменениям это до сих пор не привело.

На трекере валялся забытый тикет полугодовой давности - после обновления общего дизайна в интерфейсе модуля поехала на пару пикселей разметка. Основной дефект - причина долгих вечеров и бессонных ночей у всей команды - радовал отсутствием новых комментариев под последним ответом Марии, поздравляющим всех с успешной выдачей в production и постскриптумом: “So far, so good.”

Кифа, удовлетворённо вздохнув, открыл забытого беднягу, и за двадцать минут справился с ним. Потом зашёл на кухню, налил себе чашку кофе и, вернувшись, принялся, наконец, за написание тестов. За эти три недели он замучил вопросами всех вокруг - вернее, замучил бы, если бы окружающие не были бы готовы помогать ему постоянно по собственной воле: иметь на отделе дефект высокого приоритета от заказчика не хотелось никому. Доверие, you know. От отчаяния больше, чем от чего бы то ни было ещё, Кифа пристал к Краснову. Собственно, это он навёл Кифу на мысль собрать стенд для тестирования именно распределённым.

- Не сочтите за бестактность, однако ж не могу не осведомиться: имеет ли ваша компонента модульныя испытания?

- Юнит-тесты, ты имеешь в виду? Разумеется, мы их на сервере гоняли перед выдачей в тестирование.

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

Кифа был вынужден признать, что никаких модульных костюмов у них не было, на что Краснов заявил, что рекомендует создать хотя бы автоматические тесты важнейших бизнес-сценариев (он никогда бы не произнёс “бизнес-сценарий”, но термин, который он употребил, Кифа не помнил, потому что чуть не заснул за те пять минут, пока Краснов разглагольствовал) и запланировать написание модульных тестов в ближайшем будущем, как только кризис закончится.

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

Ещё одно пробуждение из матрицы рабочего кресла в реальный мир звёздного неба, светлых от снега сумерек и фонарей-послов оранжевого лета. В реальном мире было не то что бы очень здорово, но вполне терпимо. Ольга отвечала на SMS через раз, но зато иногда звонила сама. Тяжёлый проект только что, видимо, кончился, а Кифа и не заметил. Приближался Новый год, и хотя ничего таинственного в смене дат Кифа не видел, сама атмосфера праздника всегда захватывала его. Да тут ещё и брат Серёга сделал подарок ближайшим родственникам: урвал приглашение на какую-то очень пафосную конференцию неврологов на турбазе в Италии и подсуетился на места для жены, обоих детей, матери и Кифы. На начальных курсах Кифа даже и не пытался бы воспользоваться такой возможностью, но к пятому курсу он обнаглел и на перспективу за месяц до сессии провести неделю вдали от университета смотрел вполне спокойно.

Этот стылый полуморок неясных ожиданий, не связанных с его желаниями, неясных перспектив там, где его желания были привязаны как раз очень крепко, простой усталости, мокрого снега сверху и “Земфиры” в наушниках прорвал звонок телефона.

- Да. Оля? Привет! Рад тебя слышать! Ну ты как?

- Да вот, с работы только вышел, а т… ага.

- Поздравляю! Мальчика? Нормально всё? А, выписали вчера? Ну что ж ты мне не сказала? Я-то и не знаю.

- Ага. Ага. Да могу, наверное.

Кифа улыбнулся призрачной улыбкой, продолжая слушать любимый голос. Потом не выдержал и улыбнулся на самом деле. Широко, как Чеширский кот. Надежда Михайловна уехала в M. к старшей дочери, помочь ей с ребёнком в первые несколько недель после выписки из роддома. Ольга - с учёбой и работой - осталась дома одна. Впервые в жизни она одна в пустом доме и вчера, и третьего дня, и завтра она тоже будет - была бы - одна. Эта-то перспектива её и беспокоила. Что ж, Кифа был бы готов составить Ольге компанию и в менее приятных условиях.

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

X-post from my DW account. Visit me here.

art

Previous post Next post
Up