— Уволили.
Леша бросил куртку на пуфик и прошел на кухню, даже не разувшись. Я замерла с мокрой тарелкой в руках. Вода из крана с шумом била в раковину. На настенных часах — начало третьего. Среда.
— Как уволили? — мой голос прозвучал глухо. Я закрыла воду и вытерла руки о фартук.
Муж сел на табуретку, тяжело ссутулившись. Под глазами залегли темные круги — последние полгода он спал часа по четыре, не больше.
— По собственному. Или по статье за несоответствие должности. На выбор. Валерий Константинович так и сказал: пиши заявление, ты не справляешься с обязанностями.
Я опустилась на стул напротив. В голове мгновенно начал крутиться счетчик: платеж по ипотеке через десять дней, сыну за последний семестр в институте нужно внести оплату до конца месяца, в холодильнике только суп на два дня и десяток яиц.
— Леш, подожди. Какое несоответствие? Ты же эту систему автоматизации складов с нуля написал. Ты ночами сидел. Вчера только говорил, что закончил финальное тестирование.
Леша усмехнулся. Сухо, одними губами. Он потянулся к пачке сигарет на столе, помял ее в пальцах, но доставать не стал.
— Закончил. И вчера вечером скинул все исходники на рабочий сервер. А сегодня утром у меня заблокирован пропуск, закрыт доступ к корпоративной почте, а на столе лежит бумажка из кадров. Валерий забирает проект себе. Завтра он презентует его совету директоров как свою личную разработку.
Я смотрела на мужа и не могла поверить. Валерий Константинович пришел в их отдел год назад. Молодой, лощеный, с дипломом MBA, он не понимал в коде ровным счетом ничего, зато умел красиво говорить на совещаниях и носить дорогие костюмы. Леша тянул на себе всю техническую часть, пока начальник строил графики в презентациях.
— А премия? — зачем-то спросила я. — За запуск системы генеральный обещал бонус. Около миллиона.
— Какая премия, Лен? — Леша наконец достал сигарету и вышел на балкон. — Валерий хочет быть единственным автором проекта. Я ему больше не нужен. Мавр сделал свое дело.
***
К вечеру меня накрыла настоящая паника. Я достала тетрадь, куда записывала расходы, и начала считать. Выходило скверно. Моей зарплаты бухгалтера в районной поликлинике едва хватало на еду и коммуналку. Лешина зарплата закрывала ипотеку и учебу сына. У нас не было подушки безопасности — все свободные деньги ушли на ремонт крыши на даче в прошлом месяце.
Зазвонил телефон. На экране высветилось имя Марины, моей старшей сестры. Я не хотела брать трубку, но она звонила настойчиво.
— Привет. Слушай, мне тут Светка из отдела кадров вашей конторы звонила. Говорит, Лешку твоего поперли?
Новость уже разлетелась. Я тихо закрыла дверь в спальню, чтобы муж не слышал.
— Уволился.
— Ой, не ври мне, Лен. Светка сказала, его сам Валерий вышвырнул. Я же тебе говорила, что твой Лешка — тюфяк. Ему на шею сядут и ноги свесят, а он только молчит. В сорок восемь лет остаться на улице! И что теперь? В такси пойдет? У вас же ипотека.
Внутри всё сжалось. Сестра всегда умела бить по больному, прикрываясь заботой.
— Мы разберемся, Марин.
— Разберетесь вы. Позвони матери, пусть хоть с дачи картошки передаст, а то зубы на полку положите со своим программистом. Надо было ему вцепиться в этого начальника, в суд идти, а он хвост поджал и домой прибежал.
Я сбросила вызов, не прощаясь. Положила телефон на тумбочку. В горле стоял ком, но плакать было нельзя. Нужно было думать, как жить дальше.
Ночью я проснулась от того, что на кухне горел свет. Я накинула халат и пошла туда. Леша сидел за ноутбуком. На экране бежали бесконечные строки кода.
— Не спишь? — спросила я, ставя чайник.
Леша потер глаза и посмотрел на меня. В его взгляде не было той обреченности, с которой он пришел днем. Там было что-то другое. Спокойное и жесткое.
— Лен, сядь.
Я присела на табуретку, подогнув под себя ноги.
— Я знал, что он так сделает, — тихо сказал муж. — Валерий последний месяц слишком активно интересовался, где лежат ключи от баз данных, и требовал подробных отчетов по архитектуре. Я понял, к чему идет. Он жадный и глупый. Это опасное сочетание.
— И что ты сделал?
— Я не стал отдавать ему готовый продукт. То, что он забрал сегодня утром — это красивая оболочка. Фронтенд. Визуал. Она работает идеально, пока ты кликаешь по кнопкам в демо-версии и показываешь графики. Но я зашил в архитектуру одну особенность.
Леша отпил остывший чай прямо из заварочного чайника.
— Завтра в три часа дня у них совет учредителей. Прилетят люди из Москвы. Валерий запустит систему на главном сервере, чтобы продемонстрировать, как она обрабатывает реальный массив данных. И вот там, на этапе интеграции с логистикой, программа попытается обратиться к одному узлу. А узел этот физически находится на моем личном облачном диске. Доступа к которому у компании больше нет.
— И что будет? — я подалась вперед.
— Ошибка 404. Страница не найдена. Только это не просто ошибка браузера. Архитектура выстроена так, что при разрыве этой связи система начнет циклично запрашивать данные, перегружая оперативную память. Она намертво положит весь тестовый сервер компании. Включая текущую систему складского учета.
Я молчала. Я понимала риски.
— Леш, а на тебя в суд не подадут? За саботаж?
Он покачал головой.
— Никакого саботажа. Это не вирус. Это просто недописанный код. Я же был в процессе разработки. А меня уволили за «несоответствие». Я не успел перенести библиотеку на рабочие сервера. Все чисто. Если Валерий такой гениальный разработчик, каким хочет казаться перед начальством — он должен был проверить исходники перед запуском. Но он даже синтаксис не отличит от таблицы в экселе.
***
Следующий день тянулся невыносимо долго. Я взяла отгул на работе, сославшись на давление. Мы сидели дома. Леша методично чинил кран в ванной, который подтекал последние полгода. Я мыла окна, хотя они были чистыми. Мне нужно было чем-то занять руки.
На часах было 14:30.
— Началось, — сказал Леша, появляясь в дверях с гаечным ключом в руках.
Ему на телефон пришло сообщение. Писал Дима, его бывший коллега из соседнего отдела. Леша положил телефон на стол, включив экран, чтобы мы оба видели текст.
14:35. Дима: «Валерка в костюме-тройке. Распинается перед москвичами. Рассказывает, как он ночами не спал, оптимизировал процессы».
Я крепко сжала губку для мытья посуды.
14:42. Дима: «Генеральный доволен. Сказал, что если сейчас демо-запуск пройдет успешно, выпишет Валерке двойную премию прямо сегодня».
Леша молча смотрел на экран. Его лицо ничего не выражало.
14:50. Дима: «Валера нажимает кнопку выгрузки данных. На экране красивый прогресс-бар».
Я перестала дышать. На кухне было слышно только, как тикают настенные часы. Прошла минута. Две. Пять. Телефон молчал.
У меня начало тянуть затылок. А вдруг Леша ошибся? Вдруг кто-то из сисадминов заметил подвох и исправил? Вдруг Валерий выйдет сухим из воды, получит миллион, а мы завтра пойдем занимать деньги у моей сестры, выслушивая унижения?
14:58. Дима: «Леша. Что происходит?»
14:59. Дима: «Сервер встал. Прогресс-бар завис на 15%.»
15:02. Дима: «Система выдала фатальную ошибку. Валерка красный как рак. Тыкает по клавиатуре, мышку дергает».
15:05. Дима: «У нас легла внутренняя сеть. Складские сканеры перестали отбивать штрихкоды. На логистике паника, фуры стоят на загрузке, система их не видит».
Леша взял телефон и напечатал один короткий ответ: «Бывает». Потом заблокировал экран и положил аппарат в карман джинсов.
— Пойду мусор вынесу, — сказал он обыденным тоном.
Я осела на табуретку и выдохнула. В груди отпустило напряжение, которое держало меня вторые сутки.
***
Весь следующий день мы провели в ожидании. Никто не звонил. Я сходила в магазин, купила самых дешевых макарон и куриный набор на бульон. Считала каждую копейку на кассе. Когда возвращалась домой, позвонила Марина.
— Лен, ну что, Лешка твой работу ищет? Или на диване лежит? Соседке на даче грузчик нужен, триста рублей в час. Хоть какие-то деньги.
— Спасибо, Марин, не нужно, — я старалась говорить ровно.
— Ну смотри. Гордость в карман не положишь. Вы бы хоть ипотеку реструктуризировали, пока банк квартиру не отобрал.
Я сбросила звонок. Открыла дверь ключом. Из комнаты вышел Леша. Он был одет в чистую рубашку и брюки.
— Звонили, — коротко сказал он.
— Кто?
— Секретарь генерального. Просят срочно приехать в офис.
Я поставила пакет с продуктами на пол.
— Ты поедешь?
— Поеду.
— А если они полицию вызовут?
Леша подошел ко мне, забрал из рук ключи и повесил на крючок.
— Не вызовут. У них простой складов по всей стране стоит больше миллиона рублей в час. Им сейчас не до полиции. Им нужно, чтобы фуры поехали.
Он уехал. Я осталась одна на кухне. Разобрала пакет, поставила вариться бульон. Время тянулось как густая смола. Я то и дело поглядывала на часы. Прошел час. Два. Три.
***
Солнце уже начало садиться, когда в замке повернулся ключ.
Леша зашел в коридор, снял ботинки, аккуратно поставил их на полку. Прошел на кухню, налил себе стакан воды из графина и выпил залпом.
— Рассказывай, — я не выдержала, встала с места.
— Валерия уволили. Прямо там, в кабинете генерального. С позором и волчьим билетом. Москвичи устроили генеральному разнос. Когда начали разбираться, кто реально писал код, сисадмины показали логи сервера. Там везде моя учетка. А Валерий последние полгода в систему заходил только чтобы отчеты скачать.
Леша сел за стол и устало потер виски.
— Генеральный орал так, что стекла тряслись. Спрашивал Валерия, зачем он меня уволил. Тот что-то мямлил про оптимизацию штата. В итоге генеральный выгнал его из кабинета и спросил меня, могу ли я всё починить.
— А ты?
— Я сказал, что могу. Для этого мне нужен мой ноутбук, доступ к облаку и новая должность.
Я затаила дыхание.
— Какая должность?
— Руководителя отдела разработки. Та самая, которую занимал Валерий. С его окладом. Плюс стопроцентная надбавка за срочность восстановления системы. И письменные гарантии выплаты премии за успешный релиз. Генеральный подписал всё не глядя.
Леша достал из внутреннего кармана пиджака свернутый вдвое лист бумаги и положил на стол. Это был приказ о назначении. С печатью и подписью. Оклад в графе цифр превышал нашу ипотеку в пять раз.
— Сервер я поднял за десять минут, — добавил Леша тихо. — Просто прописал правильный путь к библиотеке данных. Логистика заработала.
Я смотрела на мужа. На его седеющие виски, на уставшие глаза. В нем не было злорадства или какой-то театральной гордости. Он просто сделал свою работу, забрал то, что принадлежало ему по праву, и вернулся домой.
Я молча подошла к плите, выключила газ под бульоном из дешевого куриного набора.
Зазвонил телефон. Снова Марина.
— Да, Марин, — ответила я.
— Лен, ну я договорилась насчет грузчика. Пусть Лешка завтра к восьми утра приезжает на станцию.
Я посмотрела на приказ, лежащий на столе, и на мужа, который наливал себе вторую кружку чая.
— Отменяй, Марин. Леша завтра выходит на работу. Руководителем отдела.
На том конце повисла долгая тишина.
— Как руководителем? — голос сестры дрогнул, в нем проскользнула откровенная обида. — А Валерий этот куда?
— А Валерий теперь, наверное, может пойти грузчиком. Если повезет, — я спокойно нажала кнопку отбоя.
Положила телефон экраном вниз. На кухне тихо гудел холодильник. Леша пододвинул ко мне кружку с горячим чаем.
Впервые за долгое время я чувствовала, что мы крепко стоим на ногах. И что справедливость, пусть не сразу и не сама по себе, но всё-таки существует. Главное — уметь ее защитить.
– Квартира просто замечательная! После свадьбы сразу оформляй доверенность, – свекровь и муж замыслили обман.