«Если сидеть весь день в наушниках и пилить функционал, то медаль получат все, кроме тебя»: почему быть хорошим инженером недостаточно, если хочешь повышения

Оленка Пилипчак

Карьера в IT никогда не бывает легкой и быстрой, особенно — в DevOps-специализации. Бытует мнение, что Junior DevOps не существует — виной всему очень высокий порог вхождения в область.

Сложностями в карьере и способами продвижения по карьерной лестнице с Highload поделился Олег Миколайченко — он развивает DevOps-сообщество в Украине, ведет Telegram-канал «ДевОпс Инженер», пишет статьи для MC.today и делает правильную инфраструктуру на должности Head of Infrastructure в компании SQUAD. 

Мы обсудили с Олегом, как ему удалось стать Head of Infrastructure, а также попросили поделиться практическими советами, реальными успешными и провальными решениями. Ниже — его история.

Олег Миколайченко — Head of Infrastructure в компании SQUAD

Получить первую работу — самое сложное для инженера

Меня воодушевляла запутанная магия с OSI, TCP/IP, кучей разных протоколов и серверами. Поэтому с самого младшего возраста пытался создать сайт: сначала на конструкторах, потом на хостингах, локально поднимал Denver (Apache, Perl, PHP, MySQL и phpMyAdmin). Это были времена CMS Joomla, Drupal и прочих.

Первые деньги заработал, продавая ссылки для SEO с созданных сайтов.

Первую настоящую работу нашел еще в университете, на практике. Многие ребята на факультете приносили формальные справки, а я принял решение пройти собеседование на должность системного администратора, но пригласили только в Support Helpdesk (техническую поддержку). 

Помню это событие, как сейчас. Прихожу, нервничаю, как-то 50/50 отвечаю на вопросы и получаю обратную связь в конце собеседования: «Ты, конечно, ничего не знаешь. Но если хочешь, можешь работать с нами без оплаты». 

Конечно, я захотел! Сервера, виртуализация, ЦОДы, сетевое оборудование — меня зажигала каждая ситуация, когда я разбирался в чем-то новом или смотрел, как это делают опытные коллеги. Так я попал уже на оплачиваемую работу в IT for Business & Support Center с зарплатой в 6000 гривен. 

Не опускать руки, следовать вектору и работать бесплатно

Мне кажется, что получить первую работу — самое сложное для инженера. Решения, которые в то время помогли мне очень сильно: 

  • готовиться к собеседованию: у меня была шпаргалка по всем примитивам на начинающую должность (OSI, TCP/IP, основные порты, команды в Linux, NAT);
  • не опускать руки: стоит ли говорить, что первый десяток собеседований я с треском провалил 🙂 ;
  • строго следовать выбранному вектору: я смотрел только в сторону серверов, инфраструктуры, сайтов, высоких нагрузок;
  • неоплачиваемая работа в перспективной компании в начале карьеры: помните, что ваше преимущество — дешевизна и энергия.

Меня всегда очень удивляло, что люди в метро читают какую-то ненужную газету с новостями или слушают музыку. В метро шумно: музыку не послушаешь, а новости — бесполезны. Я старался всегда проводить время с пользой: читал техническую литературу, слушал подкасты, находил обучающие курсы и конвертировал их в формат видео 3gp (только такой можно было запустить на телефоне). 

Дальше я уже начал удивляться на работе, когда понял, что большая часть моих коллег в свободное время играет в «Фермера» (популярную игру в соцсетях) и собирает виртуальные баклажаны. Мне это было дико и в то же время — появилось намного больше ресурсов.

Я мог официально тратить время на обучение, аргументируя это развитием решений для своей компании.

Я проходил курсы CCNA, CCNP (профильные курсы по сетям от Cisco) и MCSA, MCSE (курсы по серверным технологиям от Microsoft, но они практически не пригодились). 

Секрет успеха №1: тратить максимальное количество времени на обучение и не искать отмазки.

В начальной стадии развития карьеры абсолютно все знания будут в той или иной степени полезны. Возвращаясь назад, могу дать рекомендацию себе прошлому: учить Linux настолько глубоко, насколько это возможно, ведь 95% интернета работает на его базе. 

Пробовал автоматизировать мануальные развертывания и случайно выучил PowerShell

В какой-то момент я понял, что настраивать простые почтовые сервера на Zimbra, поднимать Active Directory, используя типичные наработки, становится неинтересно. В результате я попробовал автоматизировать мануальные развертывания и случайно выучил PowerShell. После того, как я добавил эту новую (по тем временам) технологию в LinkedIn, со мной связался рекрутер из компании BetLab и предложил пройти собеседование.

Оказалось, что у DevOps-команды осталось много PowerShell-автоматизации, они перевозят инфраструктуру с Windows Server на Linux и им нужна помощь.

Это был первый офис, где были крутые технологии, плюшки, корпоративы, отличная команда и сервера не в офисе, а в Германии. Я был счастлив.

Дальше начались профильные задачи и изучение концепций: CI/CD, методологии разработки, автоматизация, масштабирование, Python, первые контейнеры, управление конфигурациями и много очень интересных штук. Начали появляться первые митапы, IT-мир заговорил о DevOps, и методология плотно зашла на наш рынок. PowerShell к тому времени я удачно забыл, пересел на Linux и очень этому рад.

Секрет успеха №2: предсказать поведение рынка, выучить необходимую технологию, добавить ее в резюме и LinkedIn.

В моем случае знания были редкими, но потенциально нужными. Сегодня можно и нужно смотреть трендовые конференции: KubeCon, CNCF-митапы, Monitorama

Новые разработки и бизнес

После запуска Vagrant как платформы для локальной разработки, автоматизации развертывания и масштабирования приложений, настройки мониторинга и сбора логов, я завел блог, где кратко описывал свои наработки. Этот блог прочитал хороший друг и пригласил на собеседование в стартап-акселератор P1K

Вместе с мегакрутым CTO Егором Мельником (в народе — Егорыч) мы зарелизили несколько стартапов, задизайнили коробочное решение для быстрой проверки любой гипотезы или запуска MVP. Новая платформа включала все необходимые требования (сборка, развертывание) и позволяла бизнесу не терять драгоценное время. 

Самый нагруженный сервис Unicheck крутился на десятках серверов в OVH и вырос на несколько порядков в технологическом плане.

Мы могли сидеть до 23:00 в офисе и пилить фичу или разбираться в проблеме.

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

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

Почему быть хорошим инженером — недостаточно

Когда в P1K платформа стала на рельсы, мониторинг, логи и автоматизация работали как нужно — мне в личку написал рекрутер из MacPaw. В моем представлении, MacPaw — это остров всего самого лучшего, что есть в IT-мире. 

DevOps-дайджесты моего авторства, которые нашел рекрутер из MacPaw, собрали более 120 000 просмотров

Конечно, я пришел, познакомился с отличной командой и компанией. В MacPaw было принято принимать очень качественные и взвешенные решения, поэтому мне пришлось сделать step back и повторить основы основ. Примерно в этот момент появился Kubernetes — главный оркестратор всех времен и народов, мы командой мигрировали сервисы компании в AWS EKS.

В сотрудничестве с MacPaw было много классного: например, свободный день, когда ты можешь делать что угодно полезное для компании. Также MacPaw инвестировала в публичный бренд, я увидел в этом перспективу, прошел курсы публичных выступлений и поехал с докладом о трендовом HashiCorp Vault на Highload Fwdays развивать публичный бренд компании.

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

На этом этапе я понял, что важно быть очень хорошим и технически подкованным инженером, но этого недостаточно.

Если сидеть весь день в наушниках и пилить функционал, то медаль получит лид, менеджер — все, кроме тебя.

Очень важно проводить демо, быть публичным, рассказывать о победах и продавать свои решения не только внутри компании, но и во внешнем мире. 

Как я получил повышение

В AnchorFree я пришел на собеседование, потому что увидел на Kyiv Kubernetes Community отличный доклад Ярослава Молочко по Prometheus от DevOps Team Lead. Компания строила топ-1 VPN в мире, в каждом компоненте был highload и я попал на активную фазу упаковки сервиса в Docker и автоматического масштабирования. 

У нас были knowledge sharing с офисом в Калифорнии, мы ездили туда обмениваться опытом и заряжаться успешным успехом. Рост компании выглядел нереально круто, пользователей становилось все больше и в пиковый момент их было около 760 миллионов — каждый день мы выдерживали больше 12 миллионов DAU. 

Мне предстояло перевезти высоконагруженный биллинг из self-hosted датацентра в Сан-Диего в AWS. Это был личный проект нашего VP of Engineering, поэтому после завершения миграции без даунтайма я получил лычки и повышение. Вместе с напарником мы делали дизайн, архитектуру, MVP, первую итерацию, паковали и перевозили микросервисы, двигали огромную базу данных. Настраивали CDN, лендинги, ускоряли все, что можно, и развивали существующую систему.

Закатывать рукава и достигать результата

В процессе миграции я спроектировал решение коммуникации service-to-service на основе Envoy (service bridge от CNCF), оно отлично отработало в компании, и в результате появился доклад на DevOpsStage. Инженер очень быстро растет вместе с компанией, если компания находится на этапе активного роста.

После биллинга я занимался запуском двух новых направлений, начиная от дизайна и заканчивая реализацией, после чего компанию поглотила Pango, а потом — Aura. 

Секрет успеха №3: брать на себя больше ответственности, показывать максимальное качество, закатывать рукава и достигать результата.

И еще: стать world-class-инженером можно только делая world-class-задачи.  

Когда нужна команда

В какой-то момент пришло осознание, что мои 24 часа в сутки не масштабируются.

Я пришел к тому, что могу работать по 16-18 часов в сутки, но это — максимум.

Я никак не мог вместить все технические наработки в рабочий день, мне нужна была команда. Так больше не могло продолжаться, и решение было очевидным: для увеличения delivery и результатов нужно пробовать собеседоваться на позицию DevOps Team Lead. 

Так и получилось в SQUAD — я пришел в команду, построил процессы, разобрался в технической реализации и повел за собой отличных ребят. У нас было несколько приоритетов: ускорение разработки (об этом можно почитать в материале на AIN.UA), усиление безопасности, миграция проектов и внедрение лучших технологических практик для построения конкурентного преимущества. 

Производительность команды выросла, уровень технических решений взлетел, команда стала счастлива, и эти достижения помогли дорасти до Head of Infrastructure. 

Это был очень сложный путь, но я уверен — его сможет пройти тот DevOps-инженер, который будет качественно подходить к работе, делать больше, чем нужно и показывать настоящие результаты. Дальше — больше! 

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023