Без обид, – говорит он, – но я думаю, у тебя голова взорвалась бы, если бы ты жил в том постоянном хаосе и сложностях, с которыми я сталкиваюсь каждый день».
Я выдыхаю, считая до трех. «Хочешь поговорить со Стивом о том, как ты мечтаешь о моей работе? Позволь мне тебя туда проводить. Или давай, может, сначала сделаем то, что требуется бизнес-отделу, и убедимся, что все получат плату вовремя?»
Патти быстро отвечает: «Я знаю, ты меня не спрашивал, но я тоже считаю, что инцидент с системой расчета зарплаты – это то, на чем сейчас нужно сосредоточиться. – Она делает паузу и затем продолжает: – Я думаю, что Стив сделал правильный выбор. Поздравляю, Билл. Когда мы можем поговорить об увеличении бюджета?»
Я благодарю ее кивком и улыбкой и пристально смотрю на Вэса.
Проходит пара мгновений, и на его лице появляется выражение, которое я не могу разобрать. В конце концов, он соглашается: «Да, хорошо. И я запомню твое предложение поговорить со Стивом. Ему есть что объяснить».
Я киваю. Думая о своем опыте общения со Стивом, я искренне желаю Вэсу удачи, если он действительно хочет с ним встретиться.
«Спасибо вам за поддержку, ребята. Я ценю это. Итак, теперь вопрос: что мы знаем о произошедшем сбое или сбоях? Говорят, виноват сбой во вчерашнем обновлении SAN? Эти события связаны?».
«Мы не знаем, – Вэс качает головой. – Мы пытались выяснить это, как раз когда ты вошел. Мы были вчера посреди процесса обновления SAN, когда система расчета зарплаты обвалилась. Брент думал, что SAN повредил данные, поэтому он предложил откатить обновления. Мне это показалось осмысленным, но как ты знаешь, в итоге вся система превратилась в груду хлама».
Раньше я думал, что вот так вот «превратиться в хлам» может только что-нибудь небольшое, что типа когда обновления на мобильном телефоне установились неудачно. Использование этого выражения по отношению к оборудованию, которое стоит миллионы долларов и в котором хранятся все наши корпоративные данные, делает мне больно физически.
Брент работает на Вэса. Он всегда в центре важных IT-проектов. Я сталкивался с ним много раз. Он определенно очень умен, но из-за этого он порой бывает немного пугающим. Что хуже всего, так это то, что он абсолютно всегда прав.
«Ты слышал их, – говорит Вэс, указывая на людей за столом. – SAN не запускается, не обрабатывает данные, а наши ребята даже не могут прочитать сообщения об ошибке, потому что они отражаются на странном языке. То есть у нас на руках несколько обрушенных баз данных, включая, конечно же, и систему расчета заработной платы».
«Чтобы решить проблему SAN, нам пришлось оторвать Брента от работы над «Фениксом», которую мы обещали проделать для Сары, – говорит Пати зловеще. – Скоро здесь начнется настоящий ад».
«Так. Что конкретно мы ей обещали?» – спрашиваю я встревоженно.
Сара – старший вице-президент по розничным продажам, и она также работает на Стива. Она имеет неприятную привычку обвинять других людей в своих провалах, особенно коллег из IT-отдела. Годами она умудряется избегать любого вида реальной ответственности.
Хотя ходили слухи, что Стив растит ее как свою преемницу, я всегда был уверен, что это абсолютно невозможно. Я думаю, что Стив не может быть настолько слеп.
«Сара услышала от кого-то, что мы опоздали с созданием нескольких виртуальных машин для Криса, – отвечает она. – Мы бросили все, чтобы доделать ту работу. Ну, до тех пор пока мы не бросили все, чтобы восстановить SAN».
Крис Аллерс, наш старший вице-президент отдела разработок, ответственен за создание и развитие приложений под нужды бизнес-отделов, а после него эти приложения попадают к нам на поддержку и доработку. Жизнь Криса полностью подстроена под проект «Феникс».
Я чешу голову. Как компания мы вложили огромные средства в виртуализацию. Хотя это выглядит сверхъестественно, виртуализация изменила все правила игры в мире Вэса. Внезапно ему больше не пришлось управляться с тысячами физических серверов. Теперь они были лишь логическими инстансами внутри одного большого железного сервера, а могли и вовсе располагаться где-то в облаке.
Создание нового сервера теперь лишь дело клика мышкой внутри специальной программы.
Монтаж кабеля? Теперь это настройка конфигурации. Но, несмотря на обещания, что виртуализация решит все наши проблемы, вот они мы – все еще не можем предоставить Крису необходимые виртуальные машины вовремя.
«Если Брент нужен нам для работы над проблемой SAN, держите его там. Я справлюсь с Сарой, – говорю я. – Но если ошибка системы расчета зарплаты была вызвана SAN, почему мы не видим других столь же масштабных ошибок и обвалов?»
«Сара определенно будет не рада. Ты знаешь, я вдруг совершенно расхотел твою должность, – говорит Вэс, громко смеясь. – Смотри, как бы тебя не уволили в первый же день. Думаю, вслед за этим они придут за мной! – Вэс останавливается, чтобы подумать. – Ты знаешь, а тебе пришла неплохая идея. Брент работает над проблемой прямо сейчас. Пойдем к нему и узнаем, что он сам думает».
Мы с Патти киваем. Это хорошая идея. Мы должны построить полную и последовательную цепь событий. Пока же мы делаем предположения, исходя из слухов и догадок.
Это не работает при расследовании преступлений, и это определенно не работает при попытках разобраться в сбоях системы.
Глава 3
Хрупкая система
Вторник, 2 сентября
Я иду за Вэсом и Патти в глубину здания. В конце концов мы приходим в гигантский офис, объединяющий шесть стандартных кабинетов. Вдоль одной из стен располагается большой стол с множеством клавиатур и огромных мониторов, вроде рабочего места трейдера с Уолл-стрит. Повсюду башни из серверов, мигающих разными огоньками. Каждый сантиметр стола покрыт мониторами, на которых показываются графики, окна авторизации, текстовые редакторы, вордовские документы и еще бесконечное количество приложений, которых я не знаю.
Брент печатает что-то в одном из открытых окон, не обращая внимание на происходящее вокруг. Из его телефона раздаются звуки с обсуждения в NOC. Его, очевидно, не заботит, что звуки громкой связи могут помешать его соседям.
«Привет, Брент. Есть минутка?» – спрашивает Вэс, кладя руку ему на плечо.
«А это не может подождать? – отвечает Брент, даже не подняв глаза. – Я вроде как немного занят прямо сейчас. Работаю над проблемой с SAN, слышал?»
Вэс хватает стул. «Да, именно об этом мы и хотели поговорить».
Когда Брент оборачивается, Вэс продолжает: «Расскажи мне еще раз о вчерашнем вечере. Что привело тебя к выводу, что именно обновление SAN вызвало сбой в работе системы расчета зарплаты?»
Брент закатывает глаза: «Я помогал одному из инженеров SAN с обновлением прошивки, когда все ушли домой. Это заняло намного больше времени, чем мы думали, – все работало не так, как должно было. Ситуация была уже довольно напряженной, когда мы наконец-то закончили часов около семи.
Мы перезапустили SAN, и потом вся автоматическая самодиагностика системы стала давать сбои. Мы посидели над ней минут пятнадцать, пытаясь выяснить, что пошло не так. Именно в этот момент мы стали получать имейлы о сбое в работе системы расчета зарплаты. Тогда я и сказал «Game over».
Мы просто отставали на слишком много версий ПО. Производитель SAN, видимо, ни разу не устанавливал то обновление, которое мы загрузили. Я позвонил тебе и рассказал, что мы хотим отменить эту операцию. Когда ты дал согласие, мы начали откат.
И именно в этот момент SAN обвалился, – говорит он, качаясь на стуле. – И потянул за собой не только систему расчета зарплаты, но и несколько других серверов».
«Мы хотели обновить программное обеспечение SAN годами, но все никак не представлялось возможности, – объясняет Вэс, поворачиваясь ко мне. – Однажды мы уже почти собрались это сделать, но не смогли добиться достаточно большого перерыва на техническое обслуживание.
Работа программы шла все хуже и хуже до тех пор, пока несколько жизненно необходимых приложений не были повреждены. И в итоге прошлой ночью мы скрепя сердце решили установить-таки эти обновления».
Я киваю. Затем у меня звонит телефон.
Это Энн, поэтому я включаю громкую связь.
«Как ты и предлагал, мы просмотрели данные, которые выгрузили из системы расчета вчера. Последний платежный период в порядке. Но в этом платежном периоде все номера социального страхования для почасовых работников фабрики – полнейший бардак. А в полях с количеством отработанных часов только нули. Никто ничего подобного раньше не видел».
«Только одно поле в беспорядке? – спрашиваю я, брови от изумления взлетают на лоб. – Что ты имеешь в виду под словом «беспорядок»? Что в полях?»
Она пытается описать, что видит на экране. «Ну, это не цифры и не буквы. Тут немного червей, пики и волнистые линии… И еще здесь есть иностранные буквы с умлаутами… И никаких пробелов. Это важно?»
Брент хихикает, пока Энн пытается описать то, что видит на экране, я сердито гляжу на него. «Думаю, мы получили некоторое представление, – говорю я. – Это очень важно. Ты можешь переслать мне файл с поврежденными данными?»
Она соглашается. «Кстати говоря, полетели еще какие-то базы? Интересно. Вчера вечером все работало».
Вэс бормочет что-то сквозь зубы, заставляя Брента замолчать до того, как он успеет хоть что-то сказать.
«Ммм, да. Мы знаем о проблеме и работаем и над ней», – я абсолютно неэмоционален.
Положив трубку, я облегченно выдыхаю, благодаря богов, которые защищают тех людей, что фиксируют сбои.
«Только одно поле в базе данных повреждено? Ладно вам, ребята, это определенно не похоже на обвал SAN, – говорю я. – Брент, что еще происходило вчера, помимо апгрейда SAN, что могло вызвать сбой системы расчета зарплаты?»
Брент, развалившись, крутится на стуле, размышляя. «Ну, теперь, когда ты об этом спросил… Разработчик хронометрического приложения вчера звонил мне со странным вопросом о структуре таблицы базы данных. Я как раз вовсю работал над тестами для «Феникса», поэтому я постарался как можно быстрее от него отвертеться, чтобы вернуться к работе. Думаете, он мог сделать что-то, из-за чего полетела программа?»
Вэс быстро наклоняется к телефону, который по-прежнему работает на громкой связи. «Эй, парни, это Вэс. Я здесь с Брентом и Патти, а также с нашим новым боссом, Биллом Палмером. Стив Мастерс сделал его главой отдела IT-сопровождения. Так что слушайте, парни».
Мое желание дождаться официального объявления о новой должности кажется все менее исполнимым.
Вэс продолжает: «Кто-нибудь знает хоть что-нибудь о разработчиках, которые вносили изменения в хронометрическое приложение на производстве? Брент сказал, что ему звонил кто-то и спрашивал об изменении в базах данных».
Из телефона раздается голос: «Да, я помогал кому-то, кто имеет отношение к проблемам производства. Я практически уверен, что это был разработчик, о котором вы говорите. Он устанавливал какое-то приложение систем безопасности, так как Джону нужно было, чтобы на следующей неделе оно уже вовсю работало. Кажется, его звали Макс. У меня где-то были записаны его контакты… Он говорил, что с сегодняшнего дня уходит в отпуск, и поэтому работа такая срочная».
Вот мы и у цели.
Разработчик, вносящий срочные изменения, потому что ему нужно уйти в отпуск, – и все это, возможно, часть какого-то срочного проекта, которым управляет Джон Пеш, наш руководитель по информационной безопасности.
Ситуации вроде этой только укрепляют мое глубоко подозрительное отношение к разработчикам: они часто беззаботно что-то ломают и потом исчезают, оставляя прибирать бардак моему отделу.
Если и есть что-то более опасное, чем разработчик, так это разработчик, сговорившийся со службой безопасности. Если эти двое работают вместе, вот тебе и средства, и мотивы, и возможности. Скорее всего, наш руководитель по информационной безопасности заставил начальника разработчиков сделать что-то, и все это привело к тому, что разработчик сделал нечто совсем другое, в результате чего полетела система расчета зарплаты.
Служба информационной безопасности постоянно забрасывает своими суперсрочными запретами всех подряд вне зависимости от последствий для всей остальной организации, поэтому мы не особо любим приглашать их на общие встречи. Лучший способ убедиться в том, что они ничего не наворотят, – находиться с ними в одной комнате.
Они постоянно находят миллионы причин, почему, что бы мы ни делали, это создаст дыру в системе безопасности, в которую проникнут инопланетные хакеры и ограбят всю компанию и украдут наши коды, интеллектуальную собственность, номера кредитных карточек и фотографии любимых. Конечно, всегда есть потенциальные риски, но часто я просто ничего не могу разобрать в их визгливых, истеричных и лицемерных требованиях и уж тем более исправить каким-то образом безопасность нашей компании.
«Ладно, ребята, – говорю я решительно. – Сбой системы расчеты зарплаты – это вроде места преступления, а мы в таком случае – Скотленд-Ярд. SAN вычеркнут из списка подозреваемых, но, к сожалению, мы ранили его в процессе расследования. Брент, продолжай работать над покалеченным SAN, нам, безусловно, нужно поднять его и запустить.
Вэс и Патти, наши новые подозреваемые – Макс и его менеджер, – говорю я. – Делайте что нужно, чтобы найти их, задержать и выяснить, что они натворили. Мне плевать, что Макс в отпуске. Полагаю, он что-то испортил, и нам обязательно нужно это восстановить к трем часам».
На мгновение я задумываюсь. «Я собираюсь найти Джона. Кто-нибудь хочет ко мне присоединиться?»
Вэс и Патти спорят о том, кто будет помогать допрашивать Джона. Патти с пеной у рта говорит: «Это должна быть я. Я пыталась навести порядок среди людей Джона годами. Они никогда не следуют правилам, и это всегда вызывает проблемы. Я отдам что угодно, лишь бы увидеть, как Стив и Дик выносят ему выговор за то, что он выкинул такое».
Это очень убедительный аргумент, и Вэс говорит: «Ладно, он весь твой. Я уже ему сочувствую».
Внезапно я начинаю жалеть о том, какие выбрал слова. Это не охота на ведьм, и я не жажду возмездия. Нам просто нужно восстановить цепочку событий, которая привела к обвалу системы.
Возвращаясь к неадекватным решениям, вызвавшим падение SAN прошлым вечером, я подумал, что мы больше не должны совершать подобных ошибок. Не в мою смену.
Пока мы с Патти звоним Джону, я кошу глазами на экран телефона Патти, задаваясь вопросом, не пришло ли время последовать совету жены и надеть очки. Еще одна вещь, которую нужно запомнить, не считая сотни других.
Я набираю номер и после первого же гудка слышу: «Джон слушает».
Я быстро рассказываю ему о системе расчета зарплаты, обвале SAN и спрашиваю: «Ты вносил какие-то изменения в хронометрическое приложение вчера?»
Он отвечает: «Да, плохи дела, но уверяю тебя – никаких изменений в твои средние системы мы не вносили. Сожалею, что не смог помочь».
Я вздыхаю. Я думал, что уж сейчас-то Стив или Лора отправили всем сообщение о моем повышении. Похоже, мне просто суждено рассказывать о моей новой роли в каждом разговоре.
Я раздумываю над тем, а не проще ли разослать это уведомление самому.
Я коротко пересказываю историю моего повышения снова. «Вэс, Патти и я узнали, что вы с Максом работали над каким-то срочным проектом вчера вечером. Что это было?»
«Люк и Дэймон ушли? – удивляется Джон. – Никогда не думал, что Стив и вправду может уволить их обоих. Ну, кто знает? Может быть, что-то наконец начинает меняться здесь. Пусть это будет для тебя уроком, Билл. Твои люди больше не должны тянуть с проблемами безопасности! Позволь дружеский совет… Подозреваю, это все происки конкурентов, – продолжает он. – Как говорится, один раз – совпадение. Дважды – случайность. В третий раз – вражеские проделки. Возможно, произошла утечка информации с почты сотрудников отдела продаж. Это объяснило бы, почему мы теряем так много сделок».