До 2009 года термина DevOps, как и соответствующей профессии, вообще не существовало. Сегодня же специалисты этого профиля весьма востребованны, причем в самых разных компаниях, хоть сколько-нибудь связанных с IT-тематикой: от промышленных предприятий до образовательных стартапов.
Виктор Попов, DevOps-инженер в Группе НЛМК, рассказал, что это за профессия сегодня и как начать в ней карьерный путь.
Содержание:
- Что такое DevOps
- Задачи DevOps-инженера
- Плюсы и минусы профессии
- Где и как учиться
- Как войти в профессию
- Какие навыки нужны в профессии
- Где искать работу
- Карьерное развитие
Что такое DevOps
В первую очередь — это культура, и только потом из нее появилась профессия.
Раньше разработчики и сисадмины существовали в отрыве друг от друга: одни что-то там поддерживали, другие писали какой-то код — в результате часто ничего нормально не работало.
DevOps-подход призван это изменить — он основывается на совместной работе и совместном решении проблем админами и разработчиками.
Сам термин DevOps — аббревиатура, которая сложена из двух слов:
- development (разработка)
- operations (эксплуатация).
Таким образом, это многозначный термин:
- с одной стороны, это методология,
- с другой — профессия (она называется DevOps-инженер).
Причем инженеров тоже можно поделить на несколько категорий:
- Люди, которые занимаются продуктовой автоматизацией
Те, кто помогает разработчикам:
- «выкатывать» продукт в разные среды,
- делать тесты,
- проверять все.
- Инженеры, которые занимаются поддержкой DevOps-платформы и сопутствующих инструментов (например, Kubernetes) и предоставляют их разработчикам и DevOps из первой категории
Фактически это те же сисадмины, какие были 20 лет назад. Просто профессия обрела более современное звучание: сисадминам платят мало, а DevOps много — поэтому название поменяли.
Задачи DevOps-инженера
Круг обязанностей зависит от того, чем именно занимается специалист.
Если это DevOps-инженер в продуктовой автоматизации, его задачи:
- настройка pipeline;
- организация сред на CI/CD-инструментах, Jenkins, Gitlab CI.
Такой специалист должен иметь опыт работы с платформами: это может быть Kubernetes в чистом виде или, например, облачные платформы.
В целом инженер должен:
- уметь работать с пулом инфраструктурных инструментов, которые предоставляются как сервисы,
- обеспечить их нормальную работу и соответствие требованиям заказчика.
Плюсы и минусы профессии
Это довольно индивидуальный вопрос — то, что нравится одному специалисту, может категорически не подходить другому. Взять те же менеджерские задачи, умение выстроить коммуникацию с клиентом — кого-то это увлекает, других отталкивает.
Из объективных плюсов — хороший уровень дохода и актуальность профессии.
Правда, из последнего вытекает и определенный недостаток: в специальности DevOps-инженера все меняется моментально, и чтобы быть востребованным специалистом, нужно постоянно актуализировать свои знания и навыки. Так что популярность профессии — это и плюс, и минус одновременно.
С одной стороны, спрос на DevOps большой, с другой — очень высока конкуренция среди джуниоров, тогда как middle и senior находятся в дефиците.
Порог вхождения в профессию довольно высокий: нельзя «где-то что-то услышать», пройти короткие онлайн-курсы и пойти в DevOps — нужно посвятить этому много времени, чтобы стать действительно ценным и востребованным специалистом.
Где и как учиться
Короткий ответ: если вы только планируете войти в IT, то не на онлайн-курсах. Наверно, на условного тестировщика выучиться действительно можно, но только не на DevOps.
Человек редко приходит в DevOps с нуля — обычно у него есть некий IT-бэкграунд (разработчик, сисадмин).
DevOps-инженер — это, если условно, метапрофессия: более глубокая и сложная специализация, сочетающая в себе несколько направлений.
Как войти в профессию
Часто бывает так, что разработчики занимаются какой-то CI/CD-магией, иногда на своем же коде, на своем проекте, а потом плавно доучиваются и становятся DevOps. Это один популярный сценарий развития карьеры.
Второй — переходить в DevOps со стороны системного администрирования. Но это касается только тех, у кого есть опыт.
Если все же начинать с нуля, то первый предмет изучения — инструменты. Методологию можно отложить на потом: на практике junior DevOps про методологию может не знать вообще ничего примерно первые пару лет своей карьеры — и это никак не скажется на его профессиональном развитии.
Читайте по теме: Как составить резюме в ИТ-компанию — инструкция
На старте может помочь портфолио.
Если вы устраиваетесь на первую работу, то в качестве портфолио может подойти ваш Github-репозиторий pet-проекта — на нем удобно отрабатывать то, чему научился, и демонстрировать свои навыки. На портфолио работодатель смотрит не меньше, чем на образование (а часто и больше).
Какие навыки нужны в профессии
Чуть более подробно остановимся на навыках работы с инструментами и ПО.
Для начинающих инженеров базово достаточный набор может выглядеть примерно так:
Если вы человек целеустремленный и у вас есть желание с нуля начать свой путь именно в сторону DevOps, имеет смысл для начала изучить администрирование какого-нибудь базового Linux. Конечно, есть и стеки на Windows, но это скорее исключение.
Важно знать какой-либо из оркестраторов. Конечно, Kubernetes победил, но если у вас вдруг есть опыт работы с каким-нибудь Nomad или Docker Swarm, то это будет только в плюс — переучиться на Kuber недолго.
Языки программирования — опциональный, но желательный пункт.
Топ языков программирования для DevOps выглядит так:
- Python,
- Go,
- Bash.
Знать их, конечно, не будет лишним, но есть много DevOps-инженеров, которые не пишут сами, и это никак не ограничивает их профессиональное развитие.
Впрочем, может помочь и знание других языков: например, если вы работали с Java, то это пригодится. К примеру, вы можете указать разработчикам на особенности работы приложения в контейнерах или помочь со сборкой.
Читайте также: Пять языков программирования для начинающих
Нужно уметь работать с CI/CD-инструментами (Gitlab Ci, Jenkins, Bamboo, Teamcity).
Пригодится опыт работы с инструментами мониторинга:
- Prometheus/Victoria metrics,
- Grafana,
- Loki/Elastic.
Необязательно знать все досконально — но иметь в арсенале парочку точно лишним не будет.
Для DevOps-инженера актуальны и soft skills:
- вам нужно уметь общаться с людьми,
- слышать и слушать,
- уметь объяснить сложную идею просто и понятно.
Иногда даже приходится быть немного продажником: если заказчик просит выполнить задачу, но предлагает неоптимальный к ней подход, нужно уметь объяснить, как выполнить задачу правильно и почему она займет вдвое или втрое больше времени (а такие случаи происходят сплошь и рядом).
Читайте по теме: Софт-скиллы разработчика: какие навыки нужны для получения оффера мечты
На рынке есть курсы, которые объединяют эти направления, но пока они дают не очень реалистичные знания.
А еще нет единого инструмента, который все это сшивает в одно, в профессию, потому что знать по отдельности детали важно и нужно, но профессия — это немножко больше, чем просто набор инструментов.
Где искать работу
Рынок junior-специалистов в последние месяцы, прямо скажем, перенасыщен — это осложняет поиск.
Хороший вариант сегодня — пройти стажировку в крупной компании, набраться опыта и зарекомендовать себя. Если вы можете позволить себе работать пару-тройку месяцев без зарплаты или за небольшую формальную сумму, стажировка даст вам хороший старт.
Читайте по теме: «Я джун и ищу работу в IT»: где набраться опыта и чем заполнить резюме, чтобы получить оффер
Если вы уже в IT, здесь все немного проще — особенно, если в компании уже есть DevOps-команда. В этом случае переход в нее становится вопросом вашей личной инициативы. Всегда можно обсудить, договориться, попробовать, и если у вас все получается, перейти в DevOps на фултайм.
Бывают случаи, когда человек уже работает в IT, но в его компании по тем или иным причинам нет DevOps-подразделения, куда можно было бы попроситься и попробовать свои силы. В этом случае релевантность опыта сотрудника зависит от того, чем он занимался и с какими стеками работал.
Читайте также: DevOps: как измерить и изменить культуру компании
Например, если вы отлично владеете навыками системного администрирования на Linux и долго в этом направлении развивались, вы можете претендовать на позицию middle DevOps-инженера.
Ситуация с разработкой похожа: если вы имеете middle или senior грейд в разработке или системном администрировании, перейти в DevOps на middle уровень вам будет проще.
Читайте по теме: Какие навыки нужны джуниор-разработчику, чтобы получить работу
Если вы еще не работаете в IT, а вариант стажировки по каким-то причинам не подходит, здесь рекомендация самая традиционная:
- Наберите портфолио, потому что работодатели обязательно заходят на него посмотреть.
- Не сдавайтесь и не теряйте надежды: ситуация, когда вашу кандидатуру отвергли 20-30-50 компаний, совершенно нормальная.
- Стучитесь в закрытые двери, предлагайте себя самым разным компаниям — и рано или поздно это сработает.
Вопреки сложившемуся мнению о том, что HeadHunter плохо подходит для поиска IT-вакансий, на самом деле там много хороших предложений.
Более специализированные площадки, сфокусированные только на IT:
- «Хабр Карьера»,
- профильные Telegram-каналы с вакансиями, например, «Слерм Карьера».
Карьерное развитие
Как и почти любая IT-профессия, DevOps-инженер имеет разные грейды:
- junior,
- middle,
- senior.
В смысле вертикального развития на этом все: на уровне senior ты оказываешься на распутье:
- либо уходишь в менеджмент,
- либо, например, в менторство.
По менеджерской траектории можно подняться до тим/техлида или руководителя направления, а дальше и до СТО когда-нибудь дорасти.
Однако это сложный и тернистый путь, осилить который может далеко не каждый, — поэтому большинство DevOps предпочитают либо развиваться горизонтально, либо переходить в менторство.
Фото на обложке сгенерировано с помощью нейросети Midjourney
Нашли опечатку? Выделите текст и нажмите Ctrl + Enter
Материалы по теме
- Пройти курс «Самое важное o 115-ФЗ»
- 1 «Коммерсантъ» узнал о планах обязать госкомпании закупать ПО российских разработчиков
- 2 Основанную выходцами из России IT-компанию Veeam оценили в $15 млрд
- 3 VK будет делиться разработками и моделями ИИ в формате open source — Forbes
- 4 Новый инструмент от OpenAI сможет использовать компьютер от лица пользователя — Bloomberg
ВОЗМОЖНОСТИ
08 декабря 2024
09 декабря 2024
10 декабря 2024