IT Education Academy
22 февраля 2022 • 5 минут чтения

Кто такой DevOps и как им стать в 2022

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

 

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

 

Кстати, само понятие DevOps — не профессия. Это методология активного взаимодействия специалистов, свод принципов их совместной работы. А профессия называется именно DevOps-инженер, спрос на таких специалистов необычайно высок. За последние несколько лет востребованность возросла на 70% (согласно результатам исследования Яндекса совместно с HeadHunter).

 

Обязанности DevOps-инженера

 

Ежедневные задачи этого специалиста лежат на пересечении разработки, тестирования и эксплуатации.

 

Так, DevOPS-инженер при формировании плана работ подскажет, какую архитектуру уместно применять в программе, каким образом можно реализовать масштабирование, какую систему оркестрации лучше всего использовать.

 

Справка:

 

Масштабирование  — это накопление мощности проекта путем добавления ресурсов (например, когда сервер уже не справляется с возложенной на него задачей).

 

Оркестрация — это автоматическое размещение и управление сложными компьютерными системами и службами.

 

Также на плечах DevOps-инженера лежит:

  • • развертывание поставленного разработчиками релиза в производстве;
  • • стандартизация окружения разработки;
  • • настройка инфраструктуры на особенности разрабатываемого ПО;
  • • подготовка продуктивной среды к частым внесениям изменений.

 

DevOps-инженер делает тестирование кода автоматизированным, настраивает серверы.

 

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

 

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

 

Что нужно знать, чтобы стать DevOps-инженером

 

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

 

Разработка. DevOPS-инженер должен владеть хотя бы 2 языками (например, хороший набор Python / Ruby / Go).  Это нужно для того, чтобы без проблем читать и понимать код, оперативно вносить в него изменения и автоматизировать процессы.

 

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

 

Облачные технологии. Каждая компания имеет свои методы работы с базами данных. Так, у одних информация содержится на серверах, у других — в облаке. Никогда не знаешь, с чем придется работать в следующий раз, поэтому изучать эту быстро меняющуюся отрасль обязательно!

 

Знание контейнеризации и оркестрации. DevOPS-инженер должен знать, по каким принципам работают контейнеры и как формировать систему.

 

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

 

Как стать DevOps-инженером

 

Условно обучение можно разделить на 2 способа: пройти курсы или учиться самому. Мы начнем с курсов, чтобы двигаться от простого пути к сложному.

 

Курсы

 

Среди достойных обучающих центров можно выделить ITEA Online. Здесь обучают не только направлению DevOps, но и многим другим. Особенностью является то, что обучение проходит в виде живых уроков онлайн и при этом студенты больше занимаются практикой, чем изучением теории. После защиты курсовой работы студентам помогают найти работу.

 

Самообучение

 

Теперь целесообразно перейти к теме самообучения, хоть это и сложней. Самый эффективный способ разобраться в теме — самостоятельно написать простой продукт, заняться его окружением, то есть имитировать процессы DevOps, беря во внимание то одну, то другую технологию, меняя ОС и другие «вводные условия».

 

Например, напишем приложение. Потом добавим работу с базой данных, продумаем, где будет у нас хранится информация. Изучим работу с GitHub — для начала берем этот сервис, закидываем туда код. Открываем Jenkins и прописываем там автоматическую сборку приложения из нашего репозитория по кнопке. И так проходим весь процесс. После можно заменить GitHub на что-нибудь другое, как и Jenkins,  например, на TeamCity.

 

Видео

 

Мир IT с Антоном Павленко. Автор канала работает в качестве DevOps-инженера в крупной международной компании. На своем канале он рассказывает о своем профессиональном опыте, длиной в 10 лет, а также о сфере в целом.

 

ADV-IT. Познавательный канал, автор которого — Senior Cloud / DevOps инженер. Видео раскрывают актуальные вопросы, подача приятная, скучать точно не придется. Контент может быть полезным как новичкам, так и более опытным специалистам.

 

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

 

DevOps Journey. Это англоязычный канал для тех, кто хочет потреблять передовую информацию о сфере. Здесь довольно подробно разбирается, как же выучиться на DevOps-инженера, размещены туториалы и даже целые курсы по DevOps, Python, Docker, Kubernetes, Terraform, Linux и так далее.

 

Книги

 

Проект «Феникс». Роман о том, как DevOps меняет бизнес к лучшему — Джин Ким, Джонг Хан Ким, Бер К., Спаффорд Д.

 

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

 

Руководство по DevOps — Джин Ким, Патрик Дебуа, Джон Уиллис и Джез Хамбл

 

В книге вы найдете ключевые принципы DevOps, инструменты и собственно путь DevOps-инженера по повышению безопасности и надежности создания ИТ-продуктов. В частности, автор уделяет большое внимание интеграции разработки (Development) и операциям (Operations), их влиянию на разработку.

 

Kubernetes для DevOps: развертывание, запуск и масштабирование в облаке — Арундел Д., Домингус Д.

 

Философия DevOps. Искусство управления IT — Дэвис Д., Дэниелс К.

 

В книге вы найдете взгляд на методологию DevOps с разных позиций: технической, управленческой и даже философской. Книга также содержит практические советы по управлению DevOps-процессами.

 

Выводы

 

DevOps — это методология, подход в разработке и философия организации труда наконец. DevOps-инженер — это специалист, который реализует эти подходы и устраняет любые неполадки при переходе продукта от отдела разработчиков к эксплуатации.

 

Профессия подразумевает широкий спектр знаний и насмотренность, поэтому уровень компетенции — это дело опыта. При этом мы дали рекомендации, как начать реализовываться в этой профессии. И если вы видите себя в этом направлении, дерзайте и реализуйтесь!