Что такое DevOps


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

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

Чем занимается DevOps-инженер


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

DevOps объединяет нескольких специалистов.


Условно в этой культуре выделяются такие роли:
  • Build Engineer/Release Engineer - узкоспециализированный работник, занимающийся стандартизацией процессов сборки кода;
  • Release Engineer - человек, который оканчивает цикл разработки и делает из кода готовый продукт;
  • Automation Engineer - инженер по автоматизации, основная специализация в DevOps;
  • Security Engineer - сотрудник, определяющий уязвимости в компонентах и помогающий устранять их.


На практике эти роли разделяются между членами команды, но иногда их совмещает в себе 1 человек.

В широком понимании в обязанности инженера по Development Operations входят:
  • определение требований к будущему ПО на основании возможностей команды и требований заказчика;
  • вывод нового проекта в продакшн (развертывание) и поддержка разработчиков;
  • создание условий для нормального функционирования ПО;
  • настройка среды под частое внесение изменений;
  • взаимодействие с тестировщиками при проверке приложения на готовность к использованию;
  • автоматизация процессов и т.д.


Работа инженера сложная, но многообещающая. DevOps подойдет универсальным «айтишникам», которые умеют бесконфликтно решать проблемы, продуктивно взаимодействовать с командой, обладают запасом стрессоустойчивости и разумного трудоголизма.



Базовые знания, необходимые для профессии


От DevOps-инженера работодатели ждут навыков в нескольких смежных отраслях.

Такой специалист должен уметь следующее:
  • разбираться в программировании;
  • знать, как работают ОС и сети;
  • знать, как обеспечить отказоустойчивость и безопасность.


Также ему необходимо освоить инструменты и технологии: начиная от надежных систем контроля доступа SELinux и iptables для управления работой брандмауэра, заканчивая более свежими Chef, Ansible, Puppet для управления конфигурациями.

Джо Санчес, DevOps-инженер компании-мирового лидера по «облачной» инфраструктуре VMware, выделил несколько навыков, которыми должен обладать специалист. 

Кроме знания культуры Development Operations, такому человеку важно иметь практический опыт администрирования ОС, уметь работать с инструментами автоматизации, писать скрипты на 2-3 языках и разбираться в сетевых технологиях.

В каких компаниях присутствует


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

Специалистов нанимают гиганты IT-сектора наподобие Adobe, Facebook или Amazon, а также крупные компании - Walmart, Etsy, Netflix.


Не нужны инженеры по Development Operations только большинству стартапов, задача которых - как можно быстрее выпустить продукт, чтобы протестировать идею.

Предложения по курсам DevOps


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

Но даже гуманитарий, который не связан с IT, с помощью курсов может за несколько недель или месяцев стать новичком в DevOps и претендовать на должность уровня Junior.

Большинство онлайн-программ по DevOps предназначены для системных администраторов и разработчиков уровня Junior и Middle. Часто есть вступительное тестирование. Требуются хорошее знание технического английского языка, умение работать с Linux, наличие учетных записей Stack Overflow и Git.

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

Курсы для новичков продолжительные (длятся 1-1,5 года), понятные (предварительная подготовка не нужна, достаточно школьных знаний) и объемные.

Рассматриваются такие блоки:
  • координирование работы над проектом;
  • сетевые взаимодействия, построение систем;
  • работа с ОС Linux;
  • типы виртуализации и контейнеризации;
  • инструменты для автоматизации процессов;
  • «облачные» системы хранения и обработки информации;
  • базы данных (MySQL).


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

Например, можно изучить ОС Linux, Python - распространенный язык для back-end’а, открытый «облачный» сервис Amazon Web Services и устроиться на работу, а до специалиста по DevOps расти уже внутри компании.

Есть ли возможность трудоустройства


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

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

Практические занятия


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

Доступные форматы обучения


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

Используемые форматы:
  1. Заранее записанные видеоуроки. Студент самостоятельно выбирает время и продолжительность обучения.
  2. Вебинары в режиме онлайн. Можно получить мгновенную обратную связь, но необходимо присутствовать у компьютера с доступом к интернету в оговоренное время.
  3. Интерактивный курс (студент контактирует с образовательной средой).
  4. Лонгриды (текстовый формат, информация передается в виде конспектов, статей).
  5. Подкасты (дополнительный источник знаний, включающий материалы аудиоформата).


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

Как проходит обучение DevOps


E-learning предполагает просмотр учеником лекций в записи или прямой трансляции. На занятиях преподаватель объясняет новый материал, отвечает на текущие вопросы, повторяет сложные моменты.

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

Что изучается на курсах


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

Приблизительная программа:
  1. Введение: основная информация о подходе DevOps, цель философии, ценность для бизнеса, дорожная карта.
  2. Концепции операционных систем (чаще всего рассматривается администрирование ОС Linux).
  3. Принципы управления серверами.
  4. Сетевые технологии: как работают сети, что такое DNS, SSL/TLS, HTTP/S, FTP, как они настраиваются и влияют на безопасность.
  5. Контейнеризация, системы контроля версий.
  6. Инструменты мониторинга.
  7. Способы сбора, хранения и анализа данных.
  8. Принципы DevOps в IT (непрерывное обучение, обратная связь, поток создания ценности), практики (теория ограничений, цикл Деминга, постоянные интеграция, поставка и развертывание, Канбан и т.д.).
  9. Практика автоматизации, инструменты на различных этапах жизненного цикла ПО.
  10. Модели внедрения «Девопса», риски, критические факторы успеха.


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



Плюсы обучения DevOps


Применение методологии DevOps позволяет эффективно организовать работу команды, сделать продукт качественным и быстрее вывести на рынок. Это экономит бизнесу деньги, поэтому DevOps-специалисты востребованны и много зарабатывают. Карьерные перспективы - ключевой аргумент в пользу обучения Development Operations.

Как выбрать


Не каждый курс сформирует достаточные знания и навыки по выбранной специальности, сориентирует в IT и задаст вектор развития для молодого специалиста. Хорошо, если онлайн-школу может посоветовать опытный инженер DevOps.

Выбирая программу самостоятельно, стоит ориентироваться на следующее:
  • высокий уровень квалификации преподавателя и умение доступно передать информацию (это можно оценить на бесплатном пробном занятии);
  • актуальность тематических блоков;
  • удобный формат проведения занятий;
  • наличие и контроль выполнения домашних заданий;
  • гарантии (выдача сертификата, портфолио, трудоустройство);
  • баланс стоимости и качества образовательных услуг.


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

Востребованность инженеров DevOps на рынке труда


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

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

Зарабатывают специалисты по DevOps больше всех в IT. Согласно исследованию Stack Overflow, средние цифры по миру - 100-125 тыс. долларов в год (7,1-8,5 млн руб.).


В Канаде им платят 122 тыс. долларов ежегодно (8,6 млн руб., или около 723 тыс. руб. в месяц), в Великобритании - 67,5 тыс. фунтов стерлингов (5,9 млн руб., или по 496 тыс. руб. ежемесячно), в США - 90 тыс. долларов (6,4 млн руб., т.е. 533 тыс. руб. в месяц).

Московские компании готовы платить новичкам без опыта работы минимум 80 тыс. руб. Специалистам с опытом работы от 3 лет и знанием английского на уровне не ниже Upper Intermediate полагается уже 200 тыс. руб.

Специалистов уровня Middle или Senior в России мало, так что сейчас подходящее время записаться на курсы и начать подниматься по карьерной лестнице.

Курсы DevOps




Лукьянов Алексей
Лукьянов Алексей
Я нашел 11 курсов на сентябрь 2021


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

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

1 место. Skillbox


Skillbox
Управление, Маркетинг, Аналитика, Программирование, Дизайн
Рейтинг:
5.5
Рейтинг Смотрим.ком

Плюсы

Данные собираются

Минусы

Данные собираются
      3
      Показать еще №

2 место. GeekBrains


GeekBrains
Маркетинг, Программирование, Дизайн
Рейтинг:
9.5
Рейтинг Смотрим.ком

Плюсы

Данные собираются

Минусы

Данные собираются
      3
      Показать еще №

3 место. Нетология


Нетология
Управление, Маркетинг, Аналитика, Программирование, Дизайн
Рейтинг:
Рейтинг Смотрим.ком

Плюсы

Данные собираются

Минусы

Данные собираются
      3
      Показать еще №

4 место. Otus


Otus
Управление, Программирование
Рейтинг:
Рейтинг Смотрим.ком

Плюсы

Данные собираются

Минусы

Данные собираются
      3
      Показать еще №

5 место. Skillfactory


Skillfactory
Аналитика, Программирование
Рейтинг:
Рейтинг Смотрим.ком

Плюсы

Данные собираются

Минусы

Данные собираются
      3
      Показать еще №