Чем ты занимаешься и где работаешь?
На текущий момент я работаю Site Reliability-инженером (SRE) в компании Блумберг.
Ты второй SRE из крупной компании, с кем мы беседуем, предыдущим был Павел Павлович. Ты примерно то же делаешь, что и он, или у вас все по-другому?
В принципе, Блумберг переосмыслил подход к работе SRE по сравнению с Гуглом, но если брать в общем — да, это то же самое.
Гугл выпустил книжку и всем ее пропагандирует. И там написано, что SRE получается, когда берут нормального инженера-разработчика и ставят его на операции (просят его поддерживать сайт или систему). Вот это как раз я, и всю жизнь считал себя именно программистом, ориентированным на операции.
Он же системный инженер, девопс.
Не люблю это слово, потому что непонятно, о чем оно вообще. Есть много вакансий девопсов, но прежде чем туда идти, разумно бы спросить компанию, а что они вообще имеют в виду в данном случае. Для некоторых это фуллстэк-разработчик —который пишет код, а в свободное от работы время решает проблемы поддерживаемой системы. Другие просто называют девопсами всех разработчиков команды. В третьем месте это билд-инженеры, которые только выкатывают новый функционал, и так далее.
У меня же в фокусе именно поддержка работоспособности системы.
Таки в чем разница между гугловым и блумберговским пониманием SRE?
Начнем с того, что Блумберг на 20 лет старше Гугла, и для современной технологической компании это громадный срок.
Фактически Блумберг — это Гугл для финансовых структур. Многие считают, что это банк — ничего подобного. Это информационное агентство, специализирующееся на бирже и финансовых структурах. В 1982 г. был выпущен и продан первый терминал Блумберга, и до сих пор это главный продукт компании. Это программно-аппаратный комплекс, который позволяет “сравнить ужа с ежом”.
Поясню. Если ты считаешь, что на акции Эппл каким-то образом влияет карта ветров или движение танкеров в Тихом океане — ты можешь это предположение проверить. Терминал позволяет построить графики и посмотреть есть ли на самом деле совпадение.
Очень круто. Но ведь это значит, что вы должны эти факторы так или иначе заранее заложить?
Да. Это еще и немного социальная сеть финансового мира со своей почтой и мессенджером, свой телеканал, радио. Терминал Блумберга — это как сумка Луи Вуттон: он просто должен быть, если ты в определенном статусе.
Возвращаясь к отличиям. Там, например, есть критически важные системы, написанные на Фортране, и с одной стороны, никто уже не понимает, как это написано, с другой — не хватает воли переписать это все на современные технологии. Потому что иногда цену ошибки просто невозможно измерить, вплоть до анекдотов. Например, один раз оказалось проще изменить на законодательном уровне формулу расчетов бондов, чем искать, почему и как она стала считаться некорректно. Делать изменения тяжело, а поскольку все это про деньги — местами очень дорого. Стартап-подход “быстро двигайся, быстро ломай, быстро учись” неприемлем. Все должно быть надежным, железобетонным и точным. Это финансы.
SRE в Блумберге стараются построить современную операционную модель с учетом того, о чем мы говорили выше. Это сложно.
Требования на входе у вас, получается, серьезно отличаются. Гугл не любит провалов и серьезно с ними борется, но он может их себе позволить. А у вас чисто юридических обязательств гораздо больше.
Конечно. А результат должен быть не хуже. У нас, как и в Гугле, есть понятие “внутренний опен сурс”. То есть ты что-то написал — библиотеку или сервис — и можешь предложить пользоваться этим всем в компании. Например, внедрил условную Кафку и помог всем остальным проектам на нее переехать. Или централизованный мониторинг систем, куда кто угодно может слать данные по API и удобно смотреть результаты в Графане. Проблема в том, что не у всех систем есть тот же API, или современная архитектура, и мы пытаемся их как-то адаптировать — или потихонечку заменить, или построить что-то вокруг них.
То есть вы пытаетесь так же быстро бежать, но на ноге у вас гиря. У людей это формирует очень специфическую походку. Как это сказывается на ваших инженерах и инженерных практиках?
Например, у нас чтобы что-то сделать в пользовательском приложении, нужно подтверждение менеджера. И у него на смартфоне всплывает оповещение, что он должен одобрить действия. Это неудобно, но менеджер знает, что ему надо быстро среагировать — и реагирует. В Гугле любой инженер, увидев, например, что пользователи почему-то начали читать не свои письма, может немедленно потушить сервис, чтобы не компрометировать данные. У меня такой возможности нет — приходится получить подтверждение менеджера, и иногда не одного.
Такие менеджеры — очень занятые люди. В течение какого времени они отвечают?
Это очень зависит от ситуации, норм и правил нет. Обычно реагируют за минуты, если это рабочее время.
В первую очередь эта практика нужна, чтобы был понятный след — кто и что сделал — это очень помогает при разборе полетов после происшествия. И помогает от чисто человеческих ошибок, когда кто-то вывел в продакшн не тот сервер — если есть еще один человек, который глазами посмотрит, что именно ты собираешься делать — это бывает полезно.
В этой же парадигме строятся и все остальные сервисы. Все работает на Гите: хочешь вывести код с одного сервера на другой — пишешь пулреквест, получаешь одобрение, и побежали.
У разных команд это реализовано по-разному. Очень большая часть моей работы заключается в том, что я прихожу и что-то дописываю в чужие репозитории. И разумеется, прежде чем что-то сделать, приходится почитать документацию этой команды, понять их правила взаимодействия. Поскольку автономность команд и различия в подходах высокие, приходится много общаться вживую. Для программиста-интроверта это, конечно, стресс.
То есть я пишу коммит, ловлю человека из этой команды и голосом объясняю, что и зачем сделал. Если он одобряет — все это идет в жизнь. С одной стороны, тяжело и неудобно. С другой — количество глупых ошибок сильно падает, плюс при таком процессе обрастаешь дружескими связями, и если работаешь долго, все становится приемлемо и с точки зрения коммуникации. Они это называют страшным словосочетанием tribal knowledge.
Знания в головах. Ну непонятна альтернатива — нельзя в сложной системе дать возможность стороннему человеку просто брать и делать, что он хочет.
Именно. И в результате ты не можешь как Рэмбо пойти и выкашивать все подряд — тебе просто аппрув не дадут. Приоритет задачи в любой тикет-системе определяется тем, насколько быстро ты способен найти нужного человека и объяснить ему, зачем делать то, что ты в тикете написал.
Если кто-то сделал тикет и не приходит про него поговорить — может там и нет ничего важного?
Да, два дня подождать до выполнения, может, само рассосется.
Скажи, ты SRE с погонами какими-то?
В Блумберге очень круто сделано, есть только 2 градации — software engineer и senior software engineer. Я сениор.
Это круто, конечно, но у вас же как-то это все организовано? Есть зоны ответственности, есть иерархия. Как понять, к кому идти в том или ином случае?
Мне очень повезло — или наоборот, не повезло — я попал в команду, которую только что купил Блумберг, фактически стартап, и в некотором роде это компания внутри компании. Наш продукт — Bloomberg Vault — предлагается основному Блумбергу как услуга. Мы занимаемся мониторингом, безопасностью данных и т.д.
Вас немного?
Да, немного. Плотная группа примерно из 100 человек. Я вхожу в команду которая делала, внедряет и поддерживает платформу, на которой другие проекты разворачивают свои сервисы. Мы построили все на Mesos, но увы, вскоре Mesos как самостоятельный продукт прекратил свое существование. И в 2014 г. это было совершенно неочевидно. У нас раскидистая, очень надежная система на этом Мезосе построена, мы гордимся платформой, как развивать это в чисто техническом плане дальше не очень понятно.
Так бывает — пытаешься бежать очень быстро, и в результате бежишь не в ту сторону.
Скажи, пожалуйста, какой процент работ ты придумываешь себе сам?
Сложный вопрос. Когда работали над платформой, было около 70%. Остальное — это решение проблем или то, что приносят другие команды.
Сейчас я несколько ушел от SRE, поскольку в данный момент помогаю команде мигрировать на другую платформу. Пока больше вручную, но это нормально на данном этапе. А то я видел на одной из прошлых работ офигенно крутую команду, которая построила полный CI/CD своего проекта и три раза переписала его полностью, ни разу не показав реальным пользователям. Так себе вложение сил.
Я очень сильно ратую за то, чтобы сначала все делать руками, ну или хотя бы считать стоимость автоматизации прежде, чем ее делать. Чтобы понять, окупится ли она в жизненном цикле проекта. Хотя, конечно, надо бы постепенно переезжать к полной автоматизации.
Это живой процесс. Считать надо. Я довольно часто вижу, как на первом шаге делают из “грязи и палок”, смотрят, что из этого реально понадобилось, и потом переписывают набело.
К сожалению, часто второго шага не происходит, и это все цементируется и живет годами, сжирая кучу сил на поддержку.
И как вы с этим боретесь?
Усилием воли. Это те самые 70% загрузки, когда я прихожу и говорю, что вот тут и тут надо перестать делать руками и все переделать.
Ты доволен?
Да.
Что делает твою работу хорошей?
Во-первых, я стал прагматичным, и люблю, чтобы чек за работу приходил вовремя и был правильного размера. Это, по-моему, главное в работе. Мы с товарищем одним очень много походили по разным стартапам (он сейчас в Амазоне), и по нашему опыту — плюс-минус все одно и то же. Ты приходишь на, подчеркиваю, любой проект, и ужасаешься. Кругом бардак, нормально ничего не работает, по-хорошему, все надо выбросить и переписать с нуля.
Но с этим ощущением надо бороться, потому что в современном айти перфекционисту делать нечего — он будет страдать.
Если ты джуниор-перфекционист, тебя бьют, если ты сениор-перфекционист — тебя увольняют.
Наверное. Во мне есть перфекционист, поэтому наслаждаться тем, что я вижу в своих рабочих проектах, не получается совсем.
Остается брать деньгами.
Ну понятно, что все с чем я сталкиваюсь — это довольно высокотехнологичные проекты с десятками серверов. Речь не идет о неинтересной работе за большую зарплату.
Если возвращаться к плюсам Блумберга — вокруг меня умные люди. Им не приходится объяснять простые вещи, у всех есть свои сильные стороны, часто встречаешь людей которые просто умнее тебя.
То есть все атрибуты топовой айти-компании.
В отличие от Гугла тут не только инженеры, и они не самые главные, но практически — да. Это айти-компания, которая занимается финансами.
Самые главные люди в Блумберге — это, пожалуй, ученые, которые работают с серьезной аналитикой, пишут статьи и придумывают алгоритмы для терминала.
То есть истории Джоэла Спольски про инженеров в финансах, которые делают абсолютно неинтересную работу за большую зарплату —это не про вас.
Нет. Я периодически слышу душераздирающие истории про инженеров с торговых площадок, которые работают по 18 часов в день и спят рядом с работой за полмиллиона в год. И пишут без тестов и половины проверок, потому что всегда все надо позавчера. Так можно проработать два года, а потом на все эти деньги лечиться от депрессии. Но это личный выбор. Финтех — жесткая индустрия.
Что делает твою работу осмысленной?
Очень приятно, что я знаю, что я делаю. Если взять условный Фейсбук или Гугл (хоть он и менее показателен, там хоть что-то полезное есть), они все говорят, что делают мир лучше, но что-то непонятно, где и как.
Давай с простого. Фейсбук не сделал мир лучше?
Не уверен я в этом. Есть люди, которые нашли бывших одноклассников или познакомились и поженились через эту соцсеть. Но она же принесла кучу очень специфичных болячек типа FoMo (боязнь пропустить что-то важное), ставшей бичом для многих людей.
Не готов обсуждать добро или зло Фейсбук как таковой — они стали нормой жизни, значит, какая-то польза есть. Непонятно, что сейчас они полезного делают всем своим немаленьким коллективом.
Ну а Гугл: основной продукт — это реклама и торговля персонализацией пользователей. Не понимаю, чем тут гордиться. Блумберг тоже не белые и пушистые, но мне хотя бы понятно, в чем крутость того, что мы делаем.
У нас есть продукт, который стоит вполне конкретных денег и умеет делать вполне определенные вещи, как швейцарский нож. Мы не притворяемся, что спасаем мир.
Мне нравится эта честность, потому что в свое время я много походил по корпоративным проектам и знаю, с чем сравнивать. Меня, например, добрый менеджер из корпорации NBC, где я был контрактором со стороны ЭПАМа, научил аббревиатуре CYA (“прикрой свою задницу”), потому что использовал ее неоднократно. То есть не быть крайним важнее, чем делать дело. Это за гранью приемлемого для меня.
Корпоративная Америка вообще очень странное место. Там процветает культура “Yes, sir!”, когда не принято возражать вышестоящему начальству, и если иногда пойти поперек этой практики и принести с собой здравого смысла — можно выиграть много очков. Здравого смысла порой очень не хватает, потому что в корпорации даже простейший сайт все той же NBC Universal fiftyshadesofgray.com, с не самым большим траффиком, обзаводится командой в 40 человек, бешеной инфраструктурой, сложными пайплайнами доставки — и все довольны.
Расскажи про свой путь в Блумберг.
В 2011 г. я, работая в ЭПАМ, релоцировался в США, на аккаунт, который был подрядчиком у Гугла. И работал там SRE. Потом принял решение, что буду уходить, получил предложения и от одного клевого стартапа Handy, и собственно Блумберга, и последний оказался привлекательнее. Я хотел в серьезную компанию. Плюс на собеседовании в Хэнди техдиректор половину времени смотрел в свой телефон, и было непонятно, как мы с ним сможем работать дальше. Собственно, все.
Ты хотел поговорить о том, почему так много человек уезжают из Саратова.
В Саратове я работал в Грид Динамикс, и из тех, с кем я работал там, сейчас остался один человек. То есть уезжают почти все, и хочется понять, почему так происходит.
Это же очень простой вопрос, нет?
Только из-за экономического положения?
Давай попробуем разложить на простые компоненты. Мы живем в достаточно открытом мире, в котором можно поехать куда хочешь. Грид Динамикс — в топе айти-компаний в Саратове, где такие компании достаточно широко представлены. Ты берешь узкий срез лучших, предлагаешь им программу релокации и еще более хорошие условия в другом месте — понятно, что многие из них уезжают. Многие идут в эту область, понимая, что это — возможность кардинально поменять свою жизнь. Учат английский, учат технологии — именно чтобы уехать.
Чисто теоретически — возможно, тут не хватает интересных проектов? В Грид Динамиксе же очень умные ребята. Но отсюда достаточно сложно серьезно влиять на проект. Им говорят — вот тебе кусок работы, пили ее. И вроде бы ты мог бы сделать больше, но нет возможности. А когда ты переезжаешь к клиенту — она появляется, даже в рамках того же проекта. Ты можешь лично поговорить с каким-то менеджером, попить с ним пива вечером, и потихоньку складываются связи, которые как раз позволяют сложные вопросы решать проще.
Если же вернуться к экономическим вопросам — я понимаю, почему люди поехали после 2014 г. Но они же и до этого постоянно уезжали.
А я не согласен с тем, что что-то поменялось в 2014. Айтишники уж точно хуже жить не стали. И в любом случае, уезжая, ты получал и получаешь зарплату выше. Потому и едут, нет тут каких-то особых секретов.
С другой стороны, я видел много людей, которые приезжают в Америку из Украины и Беларуси, осматриваются и едут обратно. В Киеве на зарплату в 4-5 тысяч долларов ты можешь позволить себе на порядок больше, чем на более высокую, но сопоставимую — в США. Плюс внезапно оказывается, что Америка — это совершенно другая культура, в которой не всем комфортно. Особенно если у тебя и так хорошая зарплата. В Европу и Польшу переехать в этом плане гораздо проще.
Я согласен, что из Саратова уезжают много, больше, чем из России в целом, потому что поток в Москву и Питер стабильно держится.
Тем больше радуют те, кто мог бы уехать, но остается. Ваня Афоничев, Леша Корнев — остаются и делают крутые вещи здесь.
Я лично уехал не потому, что было как-то плохо в экономическом плане. Это было как-то просто. Пришел с собеседования, жена уже спала. Говорю, что заказчик Гугл. Она отвечает: надо ехать. То есть было понятно, что это какой-то другой уровень.
Трагедия в том, что как только ты становишься настолько крут и ценен, что тебе готовы платить 5 килобаксов — тебя тут же хотят увезти в Москву, Минск или Сан-Франциско, рассказывая, что именно тут очень крутые перспективы, движуха и все дела. Так что люди, которые способны в ответ на это сказать: “Я буду делать все это из Саратова!” заслуживают громких аплодисментов из Саратова же. Побольше бы таких.
Об этом я и хотел поговорить. Очень жаль, что почти все, с кем я работал — уехали. Очень круто, что кто-то остается, вы вот делаете свой Саратов айти, Дюну и Оттепель. Молодцы. Правда, гложет мысль, что это все подталкивает способных молодых людей к тому, чтобы уехать.
Не знаю. Это подталкивает людей к тому, чтобы пойти в крупную айти-компанию, из которой он сможет уехать, если выучится и станет по-настоящему крутым. Но если он не выучится и не станет крутым — толку от него, к сожалению, все равно никакого.