∞ Как освоить профессию инженера DevOps в 2021 году?

Разбираемся, как и что изучать, чтобы получить профессию инженера DevOps. Обязательно ли наличие технического бэкграунда или можно освоить необходимые знания с нуля?

DevOps (англ. development and operations) – набор практик для повышения эффективности разработки (Dev) и эксплуатации (Ops) программного обеспечения. Он позволяет наладить взаимоотношения между программистами и системными инженерами, автоматизировать рабочие процессы и быстрее выпускать готовый продукт. Основные принципы DevOps мы достаточно подробно разбирали в предыдущих статьях.

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

Можно ли освоить популярную профессию, обладая минимальными познаниями в IT?

Junior DevOps существует

Новичкам доступно несколько вариантов обучения:

  • Стажировка в компании – хороший способ получить практические знания под присмотром опытных коллег, но требуется технический бэкграунд. Работодатели тщательно выбирают интернов, шанс попасть на такую стажировку с нуля небольшой. Обратите внимание на такие компании как EPAM или DINS.
  • Обучение на платных курсах подходит для всех, независимо от опыта. Организаторы таких курсов следят за актуальностью изучаемого материала, информация структурирована и подаётся по возрастающей – от простого к сложному. Главное преимущество – проработка знаний на практических заданиях и к концу обучения у вас будет портфолио, которое можно прикрепить к резюме. Определиться с выбором курсов поможет этот ресурс.
  • Самостоятельное обучение. В сфере IT специалисты-самоучки не редкость. Этому способствует доступность информации в сети: книги, документация, сообщества, каналы в YouTube – для занятий нужен только компьютер с доступом к интернету. Выбирая этот путь, вы должны быть хорошо мотивированы и дисциплинированы. Самое главное здесь – последовательность и постоянство. Лучше уделять образованию один-два часа каждый день, чем заниматься целый день раз в неделю.

Базовые знания для карьеры в DevOps

Рассмотрим необходимые навыки для развития в направлении DevOps. Если вы новичок следуйте нашим рекомендациям по-порядку. Мы подготовили план с указанием необходимой литературы, видеоуроков и ссылками на предыдущие статьи.

Знание английского трудно переоценить в любой сфере IT и DevOps не исключение. Владение языком даже на уровне A1, A2 поможет при чтении технической документации (корректный перевод получается найти далеко не всегда). Если вы совсем не знаете язык, можно переключить все устройства на английский – это позволит выработать хотя бы начальные навыки чтения.

1. Изучите основы построения компьютерных сетей, модели osi, tcp/ip.

Рекомендуемая литература:

Эти книги помогут вам заложить прочный теоретический фундамент, а практический опыт можно получить из книг по подготовке к CCNA и программы Cisco packet tracer:

2. Изучите unix-системы, в частности GNU/Linux.

Какой дистрибутив выбрать не так важно. Изучив один, вы легко перейдете на другой. Обязательно установите Linux и изучайте команды на практике (можно работать в виртуальных машинах). Это позволит опробовать разные дистрибутивы и свободно экспериментировать с командами и конфигурационными файлами, не боясь что-то испортить. Виртуальную машину нетрудно удалить и создать новую или восстановить из снапшота.

Книги и видеоуроки по Linux:

3. Изучите скриптовый язык программирования.

На Bash обычно пишутся сценарии конфигурации сервера – это хороший выбор для работы в современных облачных средах с контейнерным хранением и микросервисами.

Python – один из самых популярных языков программирования. Инженер DevOps не является разработчиком, ему не требуется глубокое понимание языка и принципов ООП. Для создания небольших скриптов достаточно изучить основы синтаксиса, типы данных и циклы.

Рабочие инструменты инженера DevOps

таблица инструментов инженера DevOps

Не пугайтесь, даже опытный инженер не знает все указанные в приведенной выше таблице инструменты. В каждой компании используется свой технологический стек, но общие принципы подбора инструментов одинаковы. Если на новом проекте вы сталкиваетесь с новой для себя технологией, вам придется ее изучить: читайте документацию, разбирайтесь, советуйтесь с коллегами. Стремление к обучению важный софт-скилл для айтишника.

Выделим основные инструменты:

  • Git – система контроля версий;
  • Jenkins – обеспечение непрерывной интеграции(CI, англ. Continuous Integration);
  • Ansible система управления конфигурациями;
  • Docker – контейнеризация приложений;
  • Terraform/Kubernetes – системы оркестрации;
  • AWS/GCP – облачные сервисы IaaS.

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

Каналы по DevOps на Youtube:

  • ADV-IT – Денис Астахов, опытный инженер DevOps со множеством сертификатов. На его канале есть плейлисты по всем необходимым инструментам. В своих уроках Денис доступным языком и на практических примерах объясняет с чем придется столкнуться будущему специалисту. Единственный минус – не всегда грамотно поставленная речь, так как Денис живет и работает в Канаде.
  • Kirill Semaev – еще один канал по обучению Linux и практикам DevOps. Ко всем видеоуроками есть презентации и практические примеры. Недостаток – контент давно не обновлялся.
  • DevOps Channel – канал о конференциях по тематике DevOps. Он будет полезен не только в целях обучения, но и для расширения кругозора.

Другие статьи про DevOps в «Библиотеке программиста»:

***

Хочу научиться программировать с нуля, но не знаю, с чего начать. Что делать?

Можно учиться самостоятельно (долго) или пойти на курсы с преподавателями (быстро). Плюс нужно учитывать, что джунов много, конкуренция выше и работодатели повышают порог вхождения при найме на работу. Чтобы получить актуальные знания, мы в proglib.academy запустили курсы:

  • Основы программирования на Python.
  • Профессия Python-разработчик.
  • Алгоритмы и структуры данных.
  • Математика для Data Science.
  • Профессия Data Science.
  • Frontend Basic: принцип работы современного веба.
  • Профессия Фронтенд-разработчик.
  • Обработка естественного языка. Полный курс.

На подходе еще больше 10 курсов для взрослых и детей.

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ

Библиотека программиста
12 июля 2017

Что такое Docker, и как его использовать? Подробно рассказываем

Разберем по косточкам, ведь Docker – это мощный инструмент, и огромное коли...
admin
29 января 2017

Изучаем алгоритмы: полезные книги, веб-сайты, онлайн-курсы и видеоматериалы

В этой подборке представлен список книг, веб-сайтов и онлайн-курсов, дающих...