Проект «Феникс». Роман о том, как DevOps меняет бизнес к лучшему Ким Джин
Раздаются звуки одобрения, Патти сияет. «Спасибо. Это только первая неделя, и это самое широкое собрание, которое у нас когда-либо случалось. Но прежде, чем мы станем радоваться, давайте и на следующей неделе так сделаем?»
Я говорю: «Конечно же. Спасибо за то, что потратила на это столько времени, Патти. Продолжай в том же духе».
Когда встреча заканчивается, я остаюсь, смотря на доску.
Несколько раз за эту встречу какая-то мысль не давала мне покоя. Было ли это что-то, что сказал Эрик, что я не заметил раньше? Что-то связанное с работой?
В прошлый четверг Вэс и Патти проводили ручную опись всех наших проектов, и они обнаружили сотни задач. Это было выяснено в ходе личных бесед со всеми сотрудниками. Они определенно представляют собой две категории работы: бизнес-проекты и внутренние IT-проекты.
Смотря на доску изменений, я понимаю, что вижу еще один тип работы. Согласно словам Патти, это 437 кусочков… работы… которую мы выполняем на этой неделе.
Я понимаю, что эти изменения – это третья категория работы.
В то время как Патти двигала карточки с пятницы на более ранние дни, они меняли наше расписание. Каждая из этих карточек определяет, что моя команда планирует делать в этот день.
Конечно же, каждое из этих изменений намного меньше, чем целый проект, но это все же работа. Каково соотношение между изменениями и проектами? Они в равной степени важны?
И как так могло случиться, что до сегодняшнего дня ни одно из этих изменений нигде не фиксировалось, ни в одной системе? Откуда тогда все исходили?
Если изменения – это вид работы, который отличается от проектов, значит ли это, что мы ведем больше сотни проектов? Сколько подобных изменений приходится на один из сотни проектов? Если ни одно из них не соотносится с нашими проектами, должны ли мы над ними работать? Если бы у нас было достаточно персонала, чтобы заниматься сразу всеми проектами, значило бы это, что у нас нет достаточно оборудования и времени, чтобы осуществить все эти изменения?
Я разговариваю сам с собой, потому что чувствую, что я на пороге какого-то значимого озарения. Эрик спрашивал меня, какой в моей организации эквивалент тому столу на заводе. Управление изменениями подходит под эту роль?
Внезапно я начинаю смеяться над тем абсурдным количеством вопросов, которые только что сам себе задал. Я чувствую себя как дискуссионный клуб одного спикера. Эрик завлек меня в какую-то философскую чертовщину.
Задумавшись на мгновенье, я решаю, что изменения действительно являются другой категорией работы, но не знаю почему. Получается, что три из четырех типов работы я уже обнаружил. Ненадолго я задаюсь вопросом, какой же четвертый.
Глава 10
Нехватка ресурсов
11 сентября, четверг
Следующим ранним ярким утром я снова в переговорной по поводу «Феникса». Каждое утро Кирстен вкратце расписывает самые важные для «Феникса» проекты. Так как ставки очень высоки, все менеджеры стараются максимально четко выполнять поставленные задачи. Никто не хочет попасть в черный список Кирстен. Или Стива.
Плохие новости сегодня исходят от Уильма Мэйсона, начальника отдела контроля качества, который работает на Криса. По всей видимости, они по-прежнему находят в два раза больше ошибок, чем удается поправить.
Вряд ли можно назвать хорошим знаком ситуацию, когда машина рассыпается по частям, еще двигаясь по линии сборки. Поэтому ничего удивительного в том, что мы все с содроганием ждали даты запуска, не было.
Я обдумываю, как мы можем снизить некоторые риски, и вдруг я слышу, как Кирстен произносит имя Брента в третий раз. И в третий раз Вэсу приходится объяснять, почему что-то не было сделано.
Сара говорит из дальнего угла комнаты: «Вэс, похоже, твои люди запирают тебя в бутылку. У тебя какие-то проблемы с персоналом?»
Вэс краснеет и уже готов ответить, когда я быстро говорю: «Кирстен, а сколько еще заданий поручено Бренту?»
Она отвечает: «На сегодня пять срочных дел. Три были переданы ему в прошлую среду, а еще два – в пятницу».
«Ладно, я займусь, – говорю я. – И как только мы закончим здесь, я попробую разобраться, что происходит. Я пришлю тебе отчет о ходе дел сегодня к полудню, а также сроки, к которым задачи будут выполнены. Я дам тебе знать, если нам что-нибудь будет нужно».
По пути в кабинет Брента в здании № 7 я напоминаю сам себе, что моя цель – это наблюдение. В конце концов, этот парень всплывает в разговорах каждый день с тех пор, как я занял новый пост.
Возможно, Брент на самом деле не так умен, как мы думали. Или, возможно, он на самом деле какой-то технологический Эйнштейн, и все попытки найти кого-то, похожего на него, обречены на провал. Или возможно он просто саботирует все наши попытки как-то его разгрузить.
Но Брент выглядит умным профессионалом, несильно отличаясь от тех старших инженеров, с которыми я работал до этого.
Подходя к его столу, я слышу, как он разговаривает по телефону и стучит по клавишам. Он сидит перед четырьмя мониторами в наушниках. Я стою в дверях, слушая, что он говорит.
Он бормочет: «Нет, нет, нет. База данных нормально работает. Да, я знаю точно, она прямо передо мной… Да, я могу делать запросы… Да… Да… Нет… Говорю вам, должно быть дело в сервере приложений… Он в порядке? О'кей, давайте я посмотрю… Подождите, дайте я попробую вручную. Пробую…»
Звонит его сотовый. «Подождите секунду, мне звонят по другому телефону. Я вам перезвоню».
Он записывает что-то на стикере и клеит его на монитор рядом с двумя другими. Измученный, он отвечает на звонок. «Да, это Брент… Какой сервис не работает? Вы пробовали его перезагрузить? Послушайте, я действительно занят с «Фениксом» прямо сейчас, я наберу вам позже сегодня, ладно?»
Я уже мысленно поздравляю его и тут слышу: «Ох… Я не знал, кто это. Вице-президент чего? ОК, давайте я погляжу».
Я вздыхаю, садясь на стул за свободный стол, чтобы досмотреть эпизод из сериала «День из жизни Брента».
Он на телефоне еще пять минут и кладет трубку только, когда какая-то очень важная база данных снова функционирует нормально.
Я ценю то, как Брент, кажется, искренне заботится обо всем, что относится к IT-системам, но мне совсем не нравится, что все используют его, как хотят, вроде личного программиста. В ущерб «Фениксу».
Брент отлепляет один из стикеров с монитора и берет трубку. Прежде чем он успевает набрать номер, я встаю и говорю: «Привет, Брент». «Ой! – вскрикивает он. – Как давно вы здесь?»
«Всего пару минут, – говорю я с наиболее дружелюбной улыбкой, садясь рядом с ним. – Достаточно давно, чтобы увидеть, как ты решил проблемы двоих людей. Это очень мило, но я пришел насчет проектов Кирстен. Есть пять заданий, которые тебе поручили и по которым сроки уже затянуты».
Я показываю ему список из пяти проектов. Он быстро говорит: «Я уже наполовину сделал каждый из них. Мне лишь нужно пару часов спокойного рабочего времени, чтобы окончательно все доделать. Я бы сделал это из дома, если бы мог, но сетевое соединение слишком медленное».
«Кто тебе звонил и что они хотели?» – спрашиваю я хмуро.
«Обычно это другие сотрудники из IT, которые не могут что-то починить, – отвечает он, закатывая глаза. – Когда что-то ломается, я, похоже, единственный человек, который знает, как все исправить».
«Я думал, Вэс нанял несколько человек, чтобы снять с тебя некоторые обязанности», – говорю я.
Брент снова закатывает глаза: «Таков был план. Но большую часть этих людей нагружали собственной работой, и у них было полно дел, когда они нужны были мне здесь. Других уволили во время сокращений, потому что они были недостаточно нагружены. Поверьте мне, это не было большой потерей. Все равно я в итоге сам разбирался с большей частью проблем».
«На сколько звонков ты отвечаешь каждый день? Ты где-то их регистрируешь?» – спрашиваю я.
«Вы имеете в виду что-то вроде нашей системы отслеживания? Нет, потому что если я стану открывать ее и записывать каждый звонок, на это уйдет больше времени, чем на решение самой проблемы, – говорит Брент обреченно. – Количество звонков разнится. Последняя неделя была гораздо хуже средней».
Теперь я все понял. Готов поспорить, что если бы кто-то позвонил прямо сейчас и наорал или произнес достаточно важное имя, Брент занялся бы решением еще каких-нибудь проблем.
«Ты пытался надавить на последнего человека, который тебе звонил. Что заставило тебя все-таки заняться проблемой, а не отправить его куда подальше?» – спрашиваю.
Он отвечает: «Она сказала мне, что вице-президент отдела логистики кричала, что заказы на пополнение запасов не создаются и что если мы не починим систему прямо сейчас, наши магазины рискуют оказаться в сток-ауте по всем ходовым позициям. Я не хотел быть тем человеком, из-за которого у нас в магазинах образуется сток-аут».
Я сжимаю губы. Руководители компании прямо-таки наловчились использовать моих лучших инженеров для решения своих чепуховых проблем. И они совершенно не думают о том, как скажется на них провал запуска «Феникса».
Вставая, я говорю: «Ладно, с этого момента ты работаешь только над проектами для «Феникса». Стив Мастерс сказал, что это приоритет для всех. Теперь больше, чем когда-либо ты нужен проекту. Я надеюсь, что ты выполнишь это задание, а не будешь заниматься всем подряд».
Брент выглядит так, будто испытывает настоящее облегчение, и при этом он очень сосредоточен. Возможно, он думает о вице-президенте по логистике.
Я добавляю: «Если кто-то попробует связаться с тобой по вопросу, не относящемуся к «Фениксу», отправляй их к Вэсу. Пусть он сам разбирается со всеми этими придурками».
Он скептически говорит: «Слушайте, я ценю это, но я правда не думаю, что это сработает надолго. Наши ребята просто не знают, как работают все наши системы. В конце концов, они всегда приходят ко мне».
«Ну что же, им придется научиться. Когда они будут звонить, отправляй их к Вэсу. Если у кого-то будут претензии, отправляй ко мне. Знаешь, поставь-ка на свой автоответчик сообщение, что ты в отпуске и что ты не отвечаешь ни на какие письма, кроме «Феникса», и что пусть связываются с…»
Брент добавляет с улыбкой: «С Вэсом».
«Видишь? Ты уже научился», – я улыбаюсь в ответ.
Я указываю на телефон: «Делай что нужно, чтобы отучить людей обращаться напрямую к тебе по любому пустяку. Ты получаешь мое разрешение на выключение своего телефона и изменение сообщения на автоответчике, в котором говорится, что ты недоступен и все должны обращаться к Вэсу».
Осознав, что я отвлекаю Брента от «Феникса», просто стоя сейчас рядом с ним, я говорю быстро: «Нет, знаешь что, моя ассистентка Элен поменяет твое голосовое сообщение».
Брент снова улыбается и говорит: «Нет-нет-нет. Я могу сделать это сам. Спасибо за предложение».
Я записываю номер своего телефона на стикере и даю его ему: «Элен сделает это. Ты должен сфокусироваться на «Фениксе». Звони, если что-нибудь понадобится».
Когда он кивает, я уже выхожу, оборачиваюсь и спрашиваю: «Слушай, может, я куплю тебе пива на следующей неделе?»
Он соглашается, абсолютно сияющий.
Выходя из здания, я немедленно звоню Патти. Когда она берет трубку, я говорю: «Хватай Вэса и встретимся в комнате заседаний насчет «Феникса». Нам нужно разобраться с обязанностями Брента. Прямо сейчас».
Мы все сидим в переговорной.
«Как все прошло с Брентом?» – спрашивает Вэс.
Когда я говорю ему, что Брент не мог работать над «Фениксом» из-за постоянной срочной работы, он бледнеет. «Он же был на всех этих срочных собраниях! Как ему только в голову пришло думать о чем-то, кроме «Феникса».
Я говорю: «Хороший вопрос. Почему Брент бросает «Феникс», занимаясь чем-то еще?»
Вэс тихо говорит: «Возможно, потому, что кто-то вроде меня кричал на него, говоря, что мне во что бы то ни стало нужна его помощь, чтобы выполнить какое-то задание. И, возможно, это правда: в слишком большом количестве вопросов Брент оказывается единственным человеком, который знает ответ».
«Если это бывала я, то я обычно пыталась оправдаться, говоря, что это займет лишь пару минут… – говорит Патти. – Что, возможно, и было правдой, но где минутка, там и вся жизнь».
«Предполагается, что установленные процедуры призваны защитить людей. Нам нужно выяснить, как защитить Брента», – говорю я и рассказываю, как мы уже перевели все его входящие звонки на Вэса.
«Что? Ты хочешь, чтобы я разбирался с мелкими поручениями вместо него? У меня нет времени быть личным секретарем Брента или стать кем-то вроде парней из службы поддержки!» – кричит он.
«Ладно, а что, по-твоему, более важно, чем убедиться, что твои люди делают все, чтобы проекты «Феникса» были завершены в срок?» – спрашиваю я.
Вэс оторопело смотрит на меня несколько секунд и начинает смеяться.
«Ладно, ты поймал меня. Слушай, Брент умный парень. Но он также один из самых ужасных людей, которых я когда-либо видел, в ситуациях, когда нужно что-то записать. Давай я расскажу тебе, как все будет на самом деле: несколько месяцев назад мы три часа бились над восстановлением системы после сбоя первого уровня и решили во что бы то ни стало не отвлекать Брента. Но, в конце концов, мы дошли до точки, когда никаких идей уже не было и мы стали только усугублять ситуацию. И мы вызвали Брента, – он качает головой, вспоминая тот случай. – Он сел за клавиатуру и будто бы вошел в транс. Десятью минутами позже проблема была решена. Все расслабились, система восстановилась. Но затем кто-то спросил: «Как ты это сделал?» И клянусь тебе Господом Богом, Брент посмотрел на него и сказал: «Я понятия не имею, просто сделал».
Вэс опирается на стол и говорит: «Именно в этом проблема Брента. Как ты, ради всего святого, это задокументируешь? «Закройте глаза и войдите в транс»?»
Патти смеется, видимо, вспоминая ту историю. Она говорит: «Не думаю, что Брент делает это намеренно, но интересно, не смотрит ли он на свои знания как на некую суперсилу. Может быть, какая-то часть его не хочет все это бросать. Это буквально ставит его в позицию незаменимого человека».
«Возможно. Возможно, и нет, – говорю я. – Я скажу вам, что я точно знаю. Каждый раз, когда мы полагаемся на Брента в том, что сами не можем восстановить, Брент становится чуточку умнее, а вся система – тупее. Мы должны положить этому конец.
Возможно, нам нужно создать особую группу инженеров третьей линии, которые будут заниматься этими срочными проблемами, но Брент не должен в нее входить. Эти люди были бы ответственны за окончательное решение проблем, и только они могли бы получить доступ к Бренту только лишь при одном условии.
Если они хотят поговорить с Брентом, они сначала должны получить одобрение от Вэса или меня, – говорю я. – Они будут обязаны задокументировать то, чему они научились, и Бренту будет не позволено никогда больше выполнять ту же работу снова. Я буду изучать каждое из обращений еженедельно, и если я выясню, что Брент работал над какой-то проблемой дважды, будем штрафовать всех. И третий уровень, и Брента, – добавляю я. – Исходя из истории Вэса, мы не должны давать Бренту даже притрагиваться к клавиатуре. Он должен будет говорить людям, что им нажимать, но никаких больше неавторизованных документов. Это ясно?»
«Это великолепно, – говорит Патти. – В конце каждого происшествия у нас будет появляться новая статья в базе знаний, как устранить ту или иную проблему, а также целая куча людей, которые могут ее решить».
Вэс не выглядит полностью убежденным, но в конце концов он смеется. «Мне тоже нравится. Я буду относиться к нему как Ганнибал Лектор – когда он будет нам нужен, наденем на него смирительную рубашку, привяжем к крутящемуся стулу и выкатим на середину комнаты».
Я смеюсь.
Патти добавляет: «Чтобы разгрузить Брента, нам нужно подробно записать все, что он делает. Возможно, стоит сделать так, чтобы за ним ходил специальный человек с видеокамерой, а также запустить журнал записи изменений, чтобы мы знали, что именно он меняет».
Это мне нравится, хотя звучит немного экстремально. Но я уже уверен, что в такой ситуации нам помогут только экстремальные меры.
Я рискую: «Может быть, нам закрыть его доступ, чтобы он мог что-то делать только через сотрудников третьего уровня».
Вэс хохочет: «Он ведь уволится, если мы так сделаем».
«Ладно, кого мы можем использовать как сотрудников третьего уровня?» – спрашиваю я.
Он сомневается: «Ну, у нас есть двое сотрудников, которых мы наняли около года назад в помощь Бренту. Одна из них сейчас занята созданием стандартов конфигураций сервера, но мы можем ее снять с этого задания. Есть еще два инженера, которых мы обучали сразу нескольким проектам несколько лет назад, но возможности использовать это пока не было. Итак, у нас есть три человека».
«Я составлю описание новых процедур для Брента, – говорит Патти. – Мне нравится идея давать доступ к нему только через тебя и Вэса. Но как мы отучим людей вроде этого вице-президента по логистике обращаться прямо к нему?»
Я сразу отвечаю: «Мы соберем имена всех этих людей, и я обращусь к их начальству с просьбой надавить на них. А затем расскажу Стиву, как они мешают воплощению проектов «Феникса».
«Ладно, давайте попробуем, – говорит она. – Но знаете, метод «кнута» мы продумали, как насчет «пряника»? Как мы можем мотивировать Брента и инженеров следовать этому процессу?»
«Может быть, отправим их на любой тренинг или конференцию, на которую они захотят поехать? Когда старшие инженеры достигнут уровня Брента, они захотят научиться чему-то еще и поделиться собственным опытом. А что касается Брента, как насчет того, чтобы дать ему неделю отпуска, абсолютно свободную, без звонков?» – предлагает Вэс. – Господи, – продолжает Вэс, качая головой. – Не думаю, что ему удалось хоть день выходного взять без бесконечных звонков за эти три года. Знаете, он, скорее всего, расплачется, когда мы ему это предложим».
«Давайте так и сделаем, ребята, – улыбаюсь я, представляя себе эту картину. – Кстати, пока я не забыл, Вэс, я хочу получать от Брента подробное описание того, что он делал, каждый день. Нам это понадобится, чтобы проанализировать всю эту ситуацию позже. Любой, кто использует время Брента, должен будет объясниться передо мной. Если подобного оправдания не последует, я донесу все это до Стива, и тогда этот человек должен будет уже ему объяснять, почему он считает, что его дело важнее «Феникса».
«Это просто прекрасно, – говорит Патти. – За последнюю неделю мы продумали больше разнообразных процессов и процедур, чем за последние пять лет!»
«Просто все делаем в последний момент, – говорит Вэс, в его голосе слышится облегчение. – Окажите мне услугу, никому об этом не рассказывайте. Мне нужно беречь репутацию».
Глава 11
Рабочий момент
11 сентября, четверг
Позже, сидя за ланчем, я громко все проклинаю. Я пытался использовать несколько драгоценных свободных минут во время перерыва, чтобы просмотреть почту, но забыл, что мой древний ноутбук выключается сразу же, как только я отключаю его от зарядки. Это происходит со мной уже в третий раз за неделю. Я успел допить кофе и съесть половину ланча, пока смог зайти в почту.
Оглядевшись, я нашел стикер, написал «НЕ ВЫКЛЮЧАТЬ НОУТБУК, КОГДА ОН ЗАРЯЖАЕТСЯ!!!» и приклеил его на компьютер, чтобы в следующий раз не тратить время на такую тупость.
Я улыбаюсь своим собственным контрмерам, когда мне на мобильный звонит Патти. «Есть минутка поговорить? Я смотрю в календарь изменений и вижу кое-что очень странное. Тебе нужно это увидеть».
Заходя в переговорную, я вижу карточки с изменениями, висящие на стене. Корзина, в которую все их складывают, полна карточек и еще на столе лежит несколько кучек. Патти внимательно рассматривает что-то на своем ноутбуке, покусывая ногти.
Выглядя измученной, она говорит: «Мне начинает казаться, что вся эта затея с контролем изменений – пустая трата времени. На ее организацию работают три человека. А исходя из того, что я вижу сейчас, все может быть бесполезно».
Слышать, как она уничижительно высказывается о процессе, за который билась годами, очень тревожно.
«Вау, – говорю я, садясь рядом с ней. – Можешь бросить в меня камень, но я считаю, что ты проделала фантастическую работу, и мне не хотелось бы возвращаться в прошлое. Что тебя так волнует?»
Она показывает на ячейки с изменениями на понедельник и вторник. «В конце каждого дня мои люди закрывают проведенные изменения. Мы хотим убедиться, что все изменения, которые не были проведены, перенесены на другие сроки, и убедиться, что наш календарь изменений соответствует тому, что происходит в действительности».
Она показывает на уголок одной карточки. «Мы проверяем карточки, которые помечены как выполненные, а затем смотрим, не вызвали ли они какого-нибудь сбоя. С прошлой пятницы 60 % запланированных изменений не были осуществлены! Это значит, что мы делаем всю эту работу по авторизации и утверждению расписания для изменений только для того, чтобы выяснить, что их никто и не осуществлял!»
Я понимаю, почему Патти встревожена.
«А почему их не провели? И что ты делаешь с подобными карточками изменений?» – спрашиваю я.
Она держится за голову. «Я звонила нескольким из тех, кто не провел назначенные изменения, и у них всех есть самые разные оправдания. Пара людей сказала, что они не смогли собрать всех людей, которые им были нужны, чтобы реализовать изменение. Кто-то начал проводить изменения, а затем выяснил, что ребята, которые уже должны были закончить обновлять SAN к этому моменту, как обещали, не сделали этого, поэтому ему пришлось откатить свое, потратив два часа на не выполненную в итоге процедуру».
Я хмурюсь, думая о потраченном времени и усилиях. Я продолжаю слушать Патти: «Кто-то еще сказал, что не смог осуществить свое изменения, потому что был какой-то сбой. А другие говорили, мм…»
Она чувствует себя неуютно, я прошу ее продолжать. «Ну, они говорили, что им нужен Брент, а он недоступен, – говорит она обреченно. – В некоторых случаях участие Брента было запланировано. Но в других они выясняли, что им нужна его помощь уже после того, как начинали операцию. И они были вынуждены все прекращать, потому что Брент занят».
Еще до того, как Патти заканчивает говорить, я уже весь красный.
«Что? Снова Брент? Что происходит? Как он умудрился попасть абсолютно во все дела?
Вот дерьмо! – говорю я, когда вдруг понимаю, что происходит. – Мы создали проблему, заставив Брента сфокусироваться на «Фениксе»? Эта новая политика – ошибка?»
Она говорит после небольшой паузы: «Ты знаешь, это интересный вопрос. Если ты правда думаешь, что Брент должен работать только над самыми важными проектами, тогда новая политика верна и нам не нужно ее менять.
Но я думаю, что важно иметь в виду, что до недавнего времени Брент помогал людям с их изменениями без этой необходимости записывать свои действия где бы то ни было. Но он во многих случаях бывал слишком перегружен, поэтому и при старой политике многие изменения оставались неосуществленными».
Я беру телефон и быстро набираю Вэсу, прося его присоединиться к нам.
Когда он приходит через пару минут, то садится и, глядя на мой старый ноутбук, говорит: «Господи. Ты до сих пор таскаешь с собой этого монстра? Уверен, у нас есть парочка новейших восьмилетних ноутбуков, которыми ты мог бы воспользоваться».
Игнорируя его комментарий, Патти быстро посвящает его в курс дел. Его реакция на ее открытие сходна с моей.
«Ты, должно быть, шутишь! – говорит он со злостью. – Может быть, нам стоит позволить Бренту помогать этим людям с их изменениями?»
Я быстро говорю: «Нет, это не вариант. Я предлагал это тоже. Но Патти объяснила, что это фактически делает эти изменения важнее «Феникса». Но это не так, – я размышляю вслух. – Однако мы отбили у людей привычку просить Брента за них решать проблемы, теперь то же нам нужно проделать и с реализацией изменений. Те люди, которые делают эту работу, должны иметь все знания, как говорится, на руках. Если они не могут сообразить, как это делается, возможно, у нас проблема с квалификацией нашей команды».
Никто ничего не говорит, я добавляю: «Как насчет того, чтобы использовать тех же инженеров третьего уровня, чтобы защитить Брента и от этой работы?»
Вэс быстро отвечает: «Возможно. Но это не долгосрочные меры. Нам нужно, чтобы люди сами понимали, что за работу они делают, а не пользовались услугами других».
Я слушаю, как Вэс и Патти обмениваются идеями о том, как можно снизить и давление на Брента, когда что-то начинает меня беспокоить. Эрик называл «работу в процессе» «безмолвным убийцей», и именно невозможность постоянно контролировать текущие проблемы была одной из причин постоянных сбоев и проблем качества.
Мы только что выяснили, что 60 % наших изменений не были выполнены по расписанию.
Эрик говорил, что постоянно растущая гора работы на производственном этаже была индикатором того, что менеджеры не могут контролировать рабочий процесс.
Я смотрю на стопку карточек с изменениями, запланированными на сегодня, как на огромный снежный шар. Внезапно мне начинает казаться, что та картина, которую Эрик нарисовал передо мной на заводе, – это начальное состояние моей организации.
Можно ли всерьез сравнивать работу IT с работой на заводе?
Патти прерывает мои размышления, спрашивая: «О чем ты думаешь?»
Я смотрю на нее. «За последнюю пару дней только 40 % изменений были реализованы. Остальные откладываются. Давайте представим, что это будет продолжаться еще какое-то время, пока мы разбираемся, как нам распространить знания Брента.
У нас отложено 240 изменений на этой неделе. Если на следующей неделе мы получим заявки на еще 400 изменений, всего будет 640 изменений на следующую неделю!
Мы вроде Мотеля Бейтса для изменений, – говорю я в полном расстройстве. – Изменения входят к нам, но никогда не выходят. За месяц наберется тысяча изменений, которые мы будем пытаться осуществить, и все они будут противоречить друг другу».
Патти кивает: «Именно это и беспокоит меня. Нам не нужно будет ждать даже месяц, чтобы набрать тысячу изменений, – у нас уже запланировано 942. На следующей неделе мы пересечем отметку в 1000. У нас уже нет места, чтобы располагать эти карточки. И, самое ужасное, мы пытаемся решить все эти проблемы, а изменения даже не реализуются!»
Я смотрю на все эти карточки, словно они могут сами ответить на мой вопрос. Я вижу перед собой постоянно растущую кипу незавершенных проектов, разваленных на производственном этаже.
Огромная куча незаконченной работы внутри отдела IT-сопровождения и мы, которым не хватает места среди карточек с изменениями.
Куча работы, вырастающая перед печью плавления из-за Марка, который не знает, как организовать рабочий процесс.
Куча работы, вырастающая перед Брентом, потому что…
Почему?
Итак, если Брент – это наша плавильная печь, кто Марк? Кто авторизует всю эту работу, чтобы запустить ее в систему?
Что же, это мы. Или даже CAB.
Дерьмо. Значит ли это, что мы сами заперли себя?
Но изменения ведь нужно реализовывать, правильно? Именно поэтому их называют изменениями.
Кроме того, как можно сказать «нет» наступающей работе?
Смотря на растущие кучи карточек, можем ли мы позволить себе сказать «нет»?
Но когда вообще задавался такой вопрос, можем ли мы принять работу? И исходя из чего мы принимали решение?
И снова – я не знаю ответа. Но хуже всего – ощущение, что, возможно, Эрик не был буйнопомешанным. Возможно, он прав. Возможно, есть некая связь между производственным этажом на заводе и отделом IT-сопровождения. Возможно, перед нами стоят одинаковые задачи и проблемы.
Я встаю и прохожу к доске изменений. Я начинаю размышлять вслух: «Патти обеспокоена тем, что больше половины изменений не выполняются в соответствии с расписанием, задаваясь вопросом, а стоит ли тогда вообще все, что мы делаем, затраченных усилий.
Более того, – продолжаю я, – она отмечает, что значительная часть изменений не может быть реализована без Брента, частично потому, что мы запретили Бренту заниматься чем-то, кроме «Феникса». Но мы пришли к выводу, что отказываться от этой политики неразумно. – Я пытаюсь следовать за своей интуицией. – И я готов поспорить на миллион долларов, что это точно будет неправильно. Благодаря этому процессу мы вообще впервые знаем, насколько много у нас работы. Отказаться от процесса – значит отказаться от ситуационной осведомленности».
Чувствуя, будто я на правильном пути, я говорю мягко: «Патти, нам нужно разобраться, какая работа требует присутствия Брента. Какие изменения требуют его помощи, возможно, даже стоит ввести такую графу на карточках. Или использовать карточки другого цвета – на твой вкус. Ты должна выяснить все изменения, для которых требуется Брент, и попытаться заполнить эти бреши инженерами третьего уровня. Если не получится, попытайся среди них расставить приоритеты – чтобы мы могли передать их Бренту».
Чем больше я говорю, тем больше я уверен, что мы идем по правильному пути. С этой точки зрения мы, возможно, не решаем проблему, но, по крайней мере, у нас будут какие-то данные.
Патти кивает, озабоченность и отчаяние уходят с ее лица. «Ты хочешь, чтобы я разобралась с теми изменениями, для которых требуется Брент, пометила это на карточках и затребовала это как дополнительную информацию на новых карточках. И затем дала тебе знать, сколько изменений упираются в Брента, что это за изменения и какова их приоритетность. Я все правильно поняла?» – Я киваю с улыбкой.
Она записывает это все на ноутбуке. «Ладно, я поняла. Я не знаю, что мы обнаружим, но это лучше, чем все, что мне приходило в голову».
Я смотрю на Вэса: «Ты выглядишь озабоченным – что такое?»
«Мм, – говорит Вэс в конце концов. – Мне особо нечего сказать, если честно. Кроме того, что это самый сложный из всех рабочих процессов, что я когда-либо видел в IT. Без обид, но ты случайно не пил каких-нибудь таблеток недавно?»
Я улыбаюсь: «Нет, но недавно я разговаривал с одним буйнопомешанным, глядя на производственный зал на фабрике».
Но если Эрик был прав насчет текущего рабочего процесса в отделе IT-сопровождения, насчет чего еще он был прав?
Глава 12
Полет «Феникса»
12 сентября, пятница
19:30, пятница, прошло два часа после запланированного запуска «Феникса». И все не очень хорошо. Запах пиццы ассоциируется у меня с безысходностью похоронного марша.
Всю команду IT-сопровождения собрали для подготовки к запуску уже в 16:00. Но нам просто нечего было делать, потому что мы ничего не получили от команды Криса, в последнюю минуту они все еще вносили какие-то изменения.
Это не очень хороший знак – вроде как быстренько приделывать детали к шаттлу за час до запуска.
В 16:30 Уильям ворвался к переговорную «Феникса», иссиня-бледный из-за того, что никто не может получить код «Феникса», чтобы запустить его в тестовом режиме. Хуже того, те части «Феникса», которые были запущены, провалили тесты.
Уильям отослал критические отчеты разработчикам, многие из которых уже ушли домой. Крису пришлось вызывать их обратно, а команде Уильяма ждать, пока они пришлют новые версии программы.
Моя команда тоже, конечно, не просто сидела рядом и била баклуши. Напротив, мы работали с командой Уильяма, проверяя коды «Феникса» в тестовой среде. Потому что если все это не заработает в тестовом режиме, нам нужно будет молиться, чтобы запустить проект в реальный мир.
Мой взгляд перемещается с часов на стол. Брент и трое других инженеров совещаются с группой контроля качества. Они работали тут с 16:00 и уже выглядят измученными. У многих на ноутбуках открыты поисковики Google, другие систематически возятся с настройками серверов, операционных систем, баз данных и приложения «Феникс», пытаясь выяснить, как все собрать вместе, что, по словам разработчиков, было возможно.
Один из разработчиков пару минут назад вошел и сказал: «Слушайте, на моем ноутбуке все работает. Может, посмотрите?»
Вэс начинает ругаться, а два наших инженера и три инженера из команды Уильяма начинают сосредоточенно изучать компьютер разработчика, пытаясь понять, что в нем отличается от последней тестовой среды.
В другой части комнаты инженер громко разговаривает с кем-то по телефону: «Да, мы скопировали файлы, которые ты дал… Да, это версия 1.0.13… В каком смысле неправильная версия…Что? Когда вы ее поменяли?… Копирую еще раз, попробую снова… Ладно, слушай, это не будет работать… Думаю, это сетевая проблема…Что ты имеешь в виду, нужно открыть порт фаервола? Какого черта ты не сказал нам это два часа назад?»
Он бросает трубку и стучит кулаком по столу, крича: «Идиоты!»
Брент поднимает глаза от ноутбука разработчика, протирая глаза. «Дай-ка я угадаю. Внешний интерфейс не мог подсоединиться к серверу базы данных, потому что кто-то не сказал нам, что мы должны открыть порт фаервола?»
Инженер устало кивает головой и говорит: «Если честно, я просто не могу в это поверить. Я разговаривал с этим уродом по телефону двадцать минут, а ему даже в голову не пришло, что это не проблема кода. Это просто полная ЖОПА».
Я продолжаю молча слушать, но киваю, согласный с его прогнозами.
Я смотрю на часы: 19:37.
Самое время проверить менеджеров моей команды. Я собираю Вэса и Патти и оглядываюсь вокруг в поисках Уильяма. Он смотрит через плечо одного из своих инженеров. Я прошу его присоединиться к нам. На мгновенье он выглядит озадаченным, потому что обычно мы не имеем никаких совместных дел, но затем кивает и идет за нами в мой кабинет.
«Ладно, ребята, расскажите мне, что вы думаете об этой ситуации», – спрашиваю я.
Вэс первым берет слово: «Эти парни правы. Это полный кошмар. Мы все еще получаем неполные релизы от разработчиков. За последние два часа я уже дважды видел случаи, когда они забывали переслать нам какие-то необходимые файлы, без которых код просто не запускался. И, как ты сам видел, мы до сих пор не знаем, как настроить тестовую среду, чтобы «Феникс» заработал нормально».
Он снова качает головой: «Исходя из того что я видел за последние полчаса, мне кажется, что мы двигаемся только назад».
Патти просто качает головой с отвращением и мнет руки, ничего не добавляя.
Я говорю Уильяму: «Я знаю, до этого мы особо вместе не работали, но мне бы действительно хотелось узнать, что ты думаешь. Как это выглядит, на твой взгляд?»
Он смотрит вниз, потихоньку вздыхая, и говорит: «Если честно, я понятия не имею. Код меняется так быстро, что мы просто не успеваем за ним. Если бы я заключал пари, то ставил бы на то, что при запуске «Феникс» взорвется. Я пару раз разговаривал с Крисом о том, чтобы остановить релиз, но они с Сарой вообще не слушали, что я говорил».
Я спрашиваю его: «Что ты имеешь в виду «не успеваем»?»
«Когда мы находим проблемы в ходе тестирования, мы отправляем отчет разработчикам, чтобы они могли поправить ошибку, – объясняет он. – Затем они присылают нам новый релиз. Проблема в том, что на то, чтобы все настроить и запустить уходит где-то полчаса, и потом еще три часа, чтобы прокрутить весь дымовой тест. За это время нам приходит еще примерно три релиза от разработчиков».
Я усмехаюсь при упоминании дымового теста, таким термином обычно пользуются разработчики схем. Распространенная фраза: «Если ты подключил плату, и она не задымилась, значит, она, наверное, будет работать».
Он качает головой и говорит: «Нам все еще приходится делать это через такой тест. Меня заботит, что у нас до сих пор нет достаточно управляемой версии – мы уже устали просто отслеживать номера версий, которые мы запускаем. Каждый раз, когда они что-то исправляют, ломается что-то новое. Поэтому они присылают нам отдельные файлы вместо полного пакета».
Он продолжает: «Все в таком хаосе, что если бы случилось чудо и «Феникс» прошел дымовой тест прямо сейчас, я практически уверен, что мы не смогли бы повторить это, потому что слишком много частей двигались туда-сюда. – Снимая очки, он говорит обреченно: – Скорее всего, нам всем придется проторчать тут всю ночь. Я думаю, что есть серьезный риск, что мы ничего не запустим и к 8 утра завтра, когда откроются магазины. И это большая проблема».
Это очень мягкое выражение. Если мы не закончим релиз к 8 утра, системы продаж в розничных магазинах не заработают. А это значит, что мы не сможем проводить платежи на покупки.
Вэс кивает: «Уильям прав. Нам определенно придется остаться здесь на всю ночь. А результаты даже хуже, чем я мог предположить. Нам нужно, по крайней мере, еще двадцать серверов, чтобы осуществить загрузку, и я понятия не имею, где мы найдем их прямо сейчас. Несколько моих людей сейчас ищут запасное оборудование. Возможно, нам придется даже разбирать какие-то серверы».
«Уже слишком поздно отменять запуск? – спрашиваю я. – Когда наступит точка невозврата?»
«Это очень хороший вопрос, – отвечает Вэс. – Мне нужно свериться с Брентом, но, думаю, прямо сейчас мы еще можем отменить запуск без последствий. Но когда мы начнем конвертировать базы данных, чтобы они могли принимать данные как с POS-систем, так и из «Феникса», мы будем связаны по рукам и ногам. Таким образом, думаю, до этого момента есть еще пара часов».
Я киваю. Я услышал то, что хотел.
«Ребята, я попробую написать Стиву, Крису и Саре, может быть, мы сможем отменить запуск. И затем я постараюсь найти Стива. Возможно, мы сможем выбить еще одну неделю. Господи, да даже еще один день уже будет победой. Какие мысли?»
Вэс, Патти и Уильям просто молча кивают головами.
Я поворачиваюсь к Патти: «Иди вместе с Уильямом, чтобы выяснить, как мы можем лучше скоординировать релизы. Доберись до разработчиков и сыграй в авиадиспетчера – убедись, чтобы все их доработки были проименованы в соответствии с версией. А затем дай Вэсу и команде понять, что они получают. Нам нужно больше наглядности и кто-то, кто заставит людей следовать процессу. Я хочу, чтобы был только один общий вход, контролируемые релизы, документация… Понимаешь?»
Она отвечает: «С удовольствием. Я пойду в переговорную «Феникса» для начала. Выбью дверь плечом, если нужно будет, и скажу: «Мы здесь, чтобы помочь вам…»
Я всем киваю с благодарностью и открываю ноутбук, чтобы написать письмо.
От кого: Билл Палмер
Кому: Стиву Мастерсу
Копия: Крис Андерсон, Вэс Дэвис, Патти МакКи, Сара Молтон, Уильям Мэйсон