«Не жалко людей, которых уволили благодаря твоей работе?» — интервью с Андреем Маркеловым, инженером Atlassian

5dce97ec12c0cb865cda22d8169ec8ba.jpg?v=1

Андрей Маркелов работает в компании Atlassian над продуктом Confluence Cloud. В прошлом работал в Mail.ru, был аутсорсером в NFL.com, работал в advertising-стартапе. Много времени отдал компании Infobip. 

Андрей в индустрии с 2007 года. Больше 5 лет занимался аутсорсом для IBM, когда десктопные приложения были еще очень популярны. Там он делал DB2 Recovery Expert for Multiplatforms и другие странные продукты, которые до сих пор существуют, но не имеют широкой популярности. Сейчас переехал жить в Долину.

Мы поговорили с Андреем про то, как сделать себе имя, разрабатывая плагины на голом энтузиазме, почему опытные разрабы мучаются от синдрома самозванца, каково работать над продуктом, которым пользуется половина индустрии, и куда движутся технологии.

Частая смена работы и синдром самозванца

— Интересно ли работать там, где ты сейчас?

— Мне интересно, потому что я работаю напрямую с продакшеном. У меня нет такого, что я делаю, но не знаю, выстрелит это или нет. Я уверен, что это будет востребовано. Как и все, когда я сталкиваюсь с проблемами в продукте, который использую, я начинаю сильно злиться. И я понимаю ту боль, которую испытывают люди, если наш продукт не будет работать даже всего несколько минут.

Меня часто спрашивали, хотел ли я работать в одной из больших «корпораций зла»? Я очень боюсь стать очередным нонеймом среди 50 тысяч разработчиков. Для меня очень важно, чтобы все знали, что я делаю и зачем. Наверное, это связано с тем, что у меня слишком высокий уровень синдрома самозванца. Как от этого избавиться, спокойно жить и зарабатывать деньги, я не знаю. Вроде бы синдром самозванца должны испытывать люди, которые только делают первые шаги в индустрии, но у меня он развился, когда я уже был опытным разработчиком. 

Работа над плагинами помогала с этим бороться. Я чувствовал себя намного увереннее, когда мои плагины использовали большие игроки — тот же самый Uber или компания Porsche.До сих пор, для меня главная мотивация в работе — как можно быстрее увидеть результат.  В противном случае мне становится не по себе. Начинает казаться, что получаю зарплату просто так, и не достоин этого.

— Работа в большой компании — это не про быстрый результат. 

— У меня было не так. Я пришел в NFL.com и через неделю поехал в командировку, сидел в саппорте на продакшене. В Infobip первый свой деплой на продакшн я сделал в первые 5–7 дней. В Atlassian вообще на второй день.

По этому поводу у меня есть маркер, он называется bullshit-free company. Все эти компании его прошли. Если бы этого не произошло, возможно, я не ушел бы сразу, но у меня стали бы появляться всякие нехорошие мысли.

— Ты работал во многих компаниях. Как ты относишься к частой смене места?

— Спокойно. Все решения я принимаю быстро, мне нужно буквально 5–10 секунд — так же и на работе. Если я чего-то не понимаю, или что-то долго решается, скорее всего, нужно остановиться и попробовать другой вариант.

Больше 5 лет я занимался аутсорсингом для IBM. По сути пилил продукты для известной компании. Но когда я переехал в Москву в Mail.ru мне показалось: «боже мой, я все это время занимался непонятно чем!» Весь тот мир, где мне казалось, что я жил и работал, был вытеснен абсолютно другой картиной мира. Я правильно это воспринял, и стал быстро расти, как инженер.

Знаешь, как Салтыков-Щедрин писал: «Жили мужики счастливо, пока других мужиков не увидели из соседней деревни».

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

Здесь в Долине, чтобы получить promotion (повышение) тебе нужно сделать решение, которое, будет использоваться другими командами, как правило, командами не твоих прямых тиммейтов. Если ты хочешь повышение, то занимаешься чем-то новым. Тебе дают на это время. Практически это тоже самое, как уйти в другую компанию. В России зачастую promotion похож на что-то армейское: выслуга лет, или что-то в этом роде.

Разработка плагинов на энтузиазме как путь в высшую лигу

— Ты занимался разработкой плагинов для Jira. Это было по долгу службы или ты тратил свое свободное время?

— Плагины для Jira я начал делать в 2011 году, когда это еще не было мейнстримом.Я тогда работал в Mail.ru. У нас был отдел, который занимался разными внутренними тулами. Делать плагины 10 лет назад — это было довольно выгодно.

Я занимался консультациями, многие плагины публиковал бесплатно, часть продавал. Нереально поддерживать плагины в одиночку, когда у тебя их два десятка. Получал за это какие-то деньги, ездил в отпуск, смотрел мир.

Пока я работал в Infobip, успел сделать четыре плагина для Prometheus. Это была просто одноразовая вечерняя работа, хобби, голый энтузиазм. Я занимался в основном разработкой для интеграции. Помню прекрасно, как мы начали вводить Prometheus на замену Graphite, который доставлял нам кучу проблем. Сделал плагины, и они начали набирать популярность.

— В итоге ты попал в Atlassian, который этим и занимается.

— Когда началась эпидемия, я стал искать себе новую работу.  У меня был шорт-лист из 5 компаний:   Atlassian, Twilio, Stripe, Slack и скандально известный Robinhood. Получилось так, что оффер Atlassian был в первой тройке, и я вышел к ним. Раньше я был членом их комьюнити, но это никак не повлияло. Я просто знал об этой компании чуть-чуть больше, работал с их кодом, и примерно представлял что внутри.

— Ты действительно можешь достаточно быстро сделать плагин, если увидел какую то проблему?

— Когда я занимался плагинами, ко мне приходили разные люди, говорили о своих проблемах. Я думал, как можно их решить, что-то делал, получал донат. Иногда мне просто было интересно их выложить, посмотреть на обратную связь. 

Да, я делал это очень-очень быстро. У меня появилось много знакомых в Европе, в Америке, в Австралии. Когда ты делаешь опенсорс в какой-то нише — получаешь много позитивной отдачи. Знакомишься быстрее, чем это смог бы сделать на конференции, или при оставлении комментариев к каким-то статьям. Сразу сталкиваешься с людьми, у которых есть общий интерес и возможно общая боль.

Я давно уже месяца четыре не делал плагины. Но как-то работал над одной штукой для Confluence Сloud. В Atlassian есть несколько дней, когда сотрудники делают то, что захотят. Это называется ShipIt. После этого проходит голосование, турнир по швейцарской системе шахмат. Идея и реализация, которая выигрывает, скорее всего будет новым продуктом. Я знаю много хороших продуктов, выросших из этих соревнований — от идеи до воплощения.

Так ли удобна Jira

— Насколько для тебя эти инструменты управления важная часть разработки?

— Я считаю, что это настолько важно, насколько мы хотим сделать нашу разработку успешной. Простой пример: я пришел в компанию, у них были ежедневные релизы на продакшн. Для инцидент-менеджмента использовался Skype for Business. За несколько ночных инцидентов я понял, что так не пойдет. Мы перешли на Slack и чат-боты. Через месяц СТО компании решил приобрести максимальную подписку на это все. Время драгоценно: отработать инцидент, правильно сделать postmortem report используя боты и связь с Jira. Я думаю, процесс ускорился процентов на 80, не меньше.

Кстати, я говорил про маркеры компании. Для меня использование Skype for Business всегда было тревожным звоночком. Я себе не представляю, как можно, тем более сейчас, когда все работают удаленно, договориться и зафиксировать какие-то идеи, если вы не используете проверенные инструменты, тот же Google Docs. Я не верю, что это будет работать. 

Jira в этом плане такой же стандарт, как Idea для Java разработчиков.

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

— Да, так и есть. В первую очередь это экономическая сторона. Если все будут использовать один и тот же инструмент, который всем понятен, будет меньше финансовых затрат и меньше конфликтов, никакого не надо будет переучивать.

С серверными версиями наверное альтернативы совсем мало. Есть GitLab, есть бесплатный Phabricator. В Сloud у нас большая конкуренция. Я каждый день читаю отчеты про многочисленных конкурентов Confluence. Это мотивирует работать, делать лучше. Вообще нужно внимательно относиться к отзывам пользователей. На данный момент конкуренты — это Notion, Dropbox и разные надстройки над Google Docs.

— Честно, для меня Jira даже без плагинов выглядит невероятно груженой. Выглядит как штука, которая начнет решать мои проблемы, только после того, как я инвестирую кучу времени, чтобы в ней разобраться.

— Наверное, так можно сказать скорее о серверной версии Jira. Сейчас Jira Сloud позволяет быстро создать проект из коробки, готовый для работы. Я больше пользуюсь Confluence. Вся документация, дискуссии, таск-листы, то что мы хотим сделать, больше ведется в Confluence.

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

— На самом деле нет. Вот если взять Bitbucket, то я вообще не вижу альтернатив, другие продукты мне просто не нравятся. GitHub стоит особняком, поскольку enterprise-компании довольно редко использует GitHub Premium.

Что касается Jira, я уже не представляю разработку без нее. Несколько раз работал с бесплатным продуктом, он назывался Phabricator. Было не очень удобно, когда появлялись люди из-за пределов разработки, дизайнеры, например.

В правильную ли сторону движется IT индустрия

— Уже думал о том, насколько значимый вклад внес в индустрию?

— Вообще нет, но мне было приятно, когда большие игроки, такие как Uber, Apple, J.P. Morgan писали мне и спрашивали, когда будет апдейт.

Я смотрю на работу, как на очень большое соревнование, игру, в которой кто-то выигрывает, а кто-то проигрывает. Когда я работал в Infobip, нашим главным конкурентом был Twilio. Казалось, что это очень круто: я делаю вещи, которые быстро находят отклик, чтобы навязать борьбу такой большой уже состоявшейся компании. Сейчас с Confluence, у нас на уровне Cloud наверное десятка два конкурентов наберется. Постоянно надо что-то делать, а я не люблю проигрывать.

— Индустрия идет в нужную сторону?

— Сейчас индустрия двигается в сторону Cloud продуктов. Я считаю, что это правильно. В принципе мы стали разрабатывать быстрее. Многие инструменты становятся облачными. Даже для работы с кодом. CI/CD — практически на 100%. Наверное только наш Bamboo остается premise решением (пока). Хотя уже есть Bitbucket pipelines. Ближайшие 10 лет мы будем заняты переездом в Cloud.

— Это ответ на вопрос куда технически идет индустрия. А что ты думаешь о том, зачем мы вообще все это программируем?

— Есть вещи в индустрии, которые мне не нравятся. Всем они кажутся большими новшествами, а мне — нет. Это беспилотные автомобили, службы доставки еды.

Исходя из общечеловеческих соображений я считаю, что все-таки это не очень хорошо. Я знаю много людей, которые каким-то образом зарабатывают на этом деньги, живут, кормят свои семьи. А для программистов это больше забава. В этом вопросе я не согласен, как мне кажется, с большинством своих коллег. Мне нравится делать вещи, которые необходимы, чтобы помогать людям, делать их более  конкурентоспособными —, а не отнимать у них работу.

И вместе с тем, я очень хорошо запомнил одну конференцию. Коллега рассказывал, как он в большом российском топ-2, или топ-3 банке внедрял DevOps. Мы задавали вопросы через анонимную форму, и я его спросил: «тебе с твоего полета, как 40+ человеку, не жалко всех тех людей, которых Devops уволили за ненадобностью?». Он сказал очень интересную вещь, мне она понравилась.

— Да, мне очень жалко. Но если сотрудник за 20 лет научился только тому, как перекладывать файлик одного места в другое руками, и больше ничего не умеет, — то наверное нет.

Людей становится больше, потребности возрастают. В темпах развития прогресса и технологий должна быть золотая середина. Но ее пока нет. Я смотрел на свои проекты и думал о том, будут ли они приносить людям пользу, сделают ли меня счастливым. Для меня это важнее материальной стороны.

Хорошо ли, что все решения уходят в облака

— Какие языки программирования или инструменты тебе понравились технически?

— Из относительно новых — все, что родилось около Kubernetes. Инструменты мониторинга и трассировки такие как Jaeger и Prometheus. Нравится, как растут сейчас системы сборки. Очень нравится Terraform и вообще все что делают HashiCorp. Мне все это безумно нравится.

Из языков программирования лично я в восторге от того, что можно сделать используя Go: размеры, скорость. В Atlassian мы работаем в основном на Java и Kotlin.

Мы все больше уходим в Cloud и нам нужно более эффективно работать с ресурсами. Мы, как и все, делаем микросервисы. Поэтому думаю, что Go все-таки будет номер один через несколько лет.

Согласен с большинством своих коллег в том, что в будущем будет править Serverless. Я в это довольно охотно верю. Мне это видится так: у состоявшихся продуктов будет core (монолит с каким-то настройками), а все остальное займут Serverless-решения.

— Все Serverless решения, которые сейчас есть на рынке, прибивают тебя гвоздями к компании. Если Amazon с тобой поругается или выставит неподъемный прайс, у тебя больше не будет проекта. Твой serverless нельзя перенести куда-то еще.

— Когда у тебя появляется возможность переписать свой продукт заново, ты только выигрываешь! Ты написал наскоро код, прошел год, ты его осмыслил, заглянул туда, тебе стало стыдно. И вот она замечательная возможность что-то с ним сделать снова. Ты сделаешь его быстрее, может быть, даже лучше.

— Только не когда ты теряешь миллион долларов, потому что ты — Фейсбук. Надеюсь, что все придут к стандарту, чтобы код переносился.

— Модули на Node.js, по крайней мере, довольно гибкие. Интерфейс меняется, но все что происходит внутри, можно спокойно использовать. Преимущественно я использовал Node.js для таких целей.

— В СНГ ругаются на то, что Atlassian поехал в облака.

— В постсоветском комьюнити разгорелось много споров, когда мы решили полностью переехать в Cloud. Большая часть недовольства, которое появилось, связано с тем, что Atlassian перестанет продавать лицензии на серверные версии, оставит только дата-центры, которые чуть подороже. Никто не уверен в том, что облачный провайдер, который мы используем, всегда будет доступен в России. Я считаю, что это единственная проблема.

У меня есть друг, который считает, что это еще как-то связано с job security index. Что когда люди давно сидят администрируют Jira, Confluence, Bitbucket, а потом им говорят, что можно переехать в Cloud и тебе уже не нужно будет самостоятельно обновлять Ubuntu.

Моя позиция здесь неизменна, я топлю за Cloud и буду продолжать это делать.

Недавно мы пытались найти решения, которые появились именно как серверные версии, ну что-то совсем новое. JetBrains долго обещал, что будет серверный Space, но вроде бы до сих пор этого не случилось. С точки зрения бизнеса Cloud модель гораздо удобнее. Можно очень быстро получить обратную связь, стать конкурентоспособным.

Еще можно очень быстро решать проблемы.Это собственно то, чем я и занимаюсь в Atlassian. 

— Теоретически, куда вообще думаешь расти сам?

— Пока я занимаюсь тем, что мне нравится. Я двигаюсь точно не в сторону управления людьми. Мне больше нравится брать на контроль все больше вещей, которыми я управляю в техническом плане.

В дальней перспективе, думаю, что буду работать независимым консультантом. Это интересная ниша. Небольшая консалтинговая компания, ты приходишь, рассказываешь как что надо делать, исправляешь ситуации. В идеале это не будет выглядеть так, что я буду как можно дольше занимать стулья, чтобы получать пейчек, а реально приносить пользу. А потом рассказать об этом на HighLoad++.

Заходите к нам в сообщество — там мы постоянно разбираем различные проблемы и задачи из сферы Devops, обсуждаем вещи, которые пригодятся и на собеседованиях, и в работе.

© Habrahabr.ru