Что такое DevOps
Термин DevOps появился в 2009 году с легкой руки бельгийского ИТ-консультанта и руководителя проектов Патрика Дебуа. На своей странице в Twitter Патрик предложил обсудить «гибкие практики системного администрирования». Придуманный им хэштег, объединивший в себе разработку (развитие) и операции (эксплуатация), быстро стал популярным во всем мире.
Сегодня DevOps — это название целой философии и культуры взаимодействия между специалистами. А также система сопутствующих практик.
Именно практики DevOps помогли Etsy перейти от состояния разочарования и изоляции к состоянию успешного совместного производства.
Методология DevOps помогает программистам, тестировщикам и инженерам по эксплуатации работать в команде и работать над достижением общей цели. В результате ускоряется разработка и выпуск новых релизов, что хорошо как для пользователей, так и для бизнеса.
Кому нужны DevOps-инженеры и зачем
Хотя DevOps — относительно новый подход, в его ценности мало кто сомневается. А вот с профессией DevOps-инженера все не так просто. Есть мнение, что такой специальности просто не существует. Ведь один человек не может одновременно программировать, тестировать и запускать приложение в производство.
Тем не менее, рекрутинговые сайты — как российские, так и американские — активно ищут DevOps-инженеров. Особенно ими интересуются крупные организации, где работает множество разноплановых команд, а скорость выпуска и обновления программ имеет критическое значение. Но, в принципе, DevOps может принести пользу любой компании, разрабатывающей приложения или управляющей серверами.
Глобальная задача DevOps-инженера — максимально ускорить, упростить и автоматизировать разработку программного обеспечения на всех этапах, от написания кода до запуска проекта.
Конечно, это делается не из любви к искусству, а для экономии бизнеса времени и денег.
Наибольшее беспокойство у DevOps-специалиста возникает на этапе релиза проекта. Ожидается, что этот человек настроит процесс сборки и запуска программы, отследит возможные проблемы и быстро их решит. Как представитель всей философии, инженер DevOps отвечает за эффективное сотрудничество команд разработки и эксплуатации. В идеале эти отделы должны следовать девизу «Один за всех и все за одного», а не переключать стрелки друг против друга в случае очередной задержки релиза или программных глюков.
Однако с появлением DevOps-инженера таких задержек и ошибок станет на порядок меньше. По крайней мере, для этого его нанимают.
Что должен уметь инженер DevOps
Чтобы успешно выполнять свои задачи, инженер DevOps должен разбираться в программировании, системном администрировании, облачных технологиях и автоматизации инфраструктуры. А также быть хорошим менеджером и переговорщиком.
Хотя требования к сотруднику зависят от конкретной компании, в любом случае список ожиданий от DevOps-инженера очень широк. Вот лишь базовый набор навыков и знаний, без которых в этой профессии не обойтись:
- Понимание жизненного цикла и этапов разработки программного обеспечения
- Понимание принципов Agile
- Понимание процессов CI/CD ( Continuous Integration/Continuous Delivery) — непрерывная интеграция и доставка приложений.
- Опыт работы со средствами автоматизации CI/CD (Jenkins, GitLab CI/CD, CircleCI, Bamboo, TeamCity и др.).
- >Опыт автоматизации виртуальной инфраструктуры (инфраструктура как код или IaC) с использованием Terraform.
- Опыт работы с инструментами управления конфигурацией (в основном Ansible, но также Chef и Puppet).
- Опыт работы с системой контроля версий Git.
- Экспертное знание операционных систем Linux и/или Windows.
- Знание сетевых технологий и основных сетевых протоколов (TCP / IP).
- Опыт администрирования баз данных (MongoDB, MySQL, PostgreSQL).
- Опыт работы с веб-серверами (Apache, Nginx) и развертывания веб-приложений.
- Опыт работы с облачными платформами (AWS, Microsoft Azure или Google Cloud).
- Опыт работы с контейнерами (Docker) и системой управления контейнерами (Kubernetes).
- Умение писать скрипты для автоматизации в двух или три языка (обычно Bash, Python, Ruby или Perl).
- Опыт работы с инструментами мониторинга инфраструктуры (Zabbix, Prometheus).
- Развитые коммуникативные навыки< /a>.
- Разговорный и письменный английский - не ниже Intermediate.
Кроме того, для успеха в DevOps крайне важны быстрая обучаемость, желание досконально разобраться в проблеме и неистребимое желание всё оптимизировать и улучшить.
Сколько получает инженер DevOps
Разнообразные навыки и таланты инженера DevOps щедро вознаграждаются. Средняя зарплата техника, работающего с несколькими станками, приближается к 100 000 долларов в год в США и 140 000 рублей (около 1 800 долларов) в месяц в России. Это выше, чем в среднем по российским ИТ-специалистам (108 000 рублей или около 1400 долларов США в месяц).
Заработок зависит от уровня специалиста (младший, средний или старший) и от региона. Так, ставка DevOps-инженера среднего уровня стремится к 230 000 рублей в месяц (около 3000 долларов), а старший вполне может претендовать на сумму в полтора-два раза выше (4500–6000 долларов). В Москве и Санкт-Петербурге традиционно платят больше, чем в других городах.
Как стать инженером DevOps
DevOps — это, прежде всего, опыт и глубокое понимание того, как устроен процесс разработки, запуска и сопровождения программ, а не знание конкретных инструментов.
Неудивительно, что проще всего войти в профессию тем, кто уже работал в ИТ либо программистом, либо системным администратором. Некоторые способны самостоятельно освоить инструменты и принципы DevOps, а для всех остальных существует множество курсов переподготовки.
Курс могут пройти и новички. Но в любом случае их лучше проходить не с нуля, а на базе высшего или хотя бы среднего образования в области информационных технологий. Идеальный вариант для новичков — изучение основ DevOps в ИТ-компаниях, дающих шанс на трудоустройство.
Где обучают инженеров DevOps
Мы составили список из пяти популярных курсов на любой кошелек, темп и уровень.
1. Школа DevOps
- Продолжительность: 2 недели - 3 месяца (10-68 академических часов).
- Стоимость: 0-120 тыс. руб. курс.
- Студенты: от новичков до специалистов с опытом работы инженером DevOps не менее года.
- Формат: онлайн-уроки, живое общение с преподавателями.
- Занятость: консультации по трудоустройству, помощь в составлении резюме, двухнедельная стажировка после курса повышения квалификации .
DevOps School предлагает бесплатный онлайн-курс для тех, кто делает первые шаги в профессии. За 10 академических часов вы познакомитесь с основными понятиями DevOps, Agile и жизненного цикла программного обеспечения, а также научитесь работать с Linux, Git, Jenkins и Ansible.
Для системных администраторов, сетевых и системных инженеров, программистов и тестировщиков предусмотрен расширенный курс переподготовки продолжительностью 36 часов (2 месяца).
Наконец, профессионалы, уже проработавшие DevOps-инженером не менее года, знающие языки сценариев (Python, Perl, Ruby) и хорошо владеющие техническим английским языком, могут повысить свой уровень на продвинутом курсе продолжительностью 68 часов (3 месяца) . По окончании студенты проходят двухнедельную стажировку.
2. Набор навыков
- Продолжительность: 12 месяцев (271 онлайн-урок).
- Стоимость: 8 824 рубля в месяц (5 294 рубля в месяц с скидка), рассрочка на 34 месяца.
- Студенты: IT-специалисты младшего и среднего звена.
- Формат: видеолекции, мастер-классы, домашние задания с обратной связью от наставника.
- Трудоустройство: рекомендации по портфолио и резюме, подготовка к собеседованию, личные консультации, наличие реальных заказчиков на защите диплома. >
Программа PRO DevOps Engineer Profession от Skillbox Online University предназначена для системных администраторов, тестировщиков и программистов, которые хотят получить новую востребованную специальность. Новички тоже могут попробовать свои силы, но они должны хотя бы на базовом уровне понимать основы Linux, сетей и баз данных, уметь работать с веб-серверами и программировать на Bash.
Не отрываясь от основной деятельности, студенты освоят наиболее популярные системы контейнеризации Docker и системы контроля версий Git, научатся автоматизировать настройку серверов и процессы CI/CD, а также создавать решения для мониторинга. Кроме того, они начнут писать скрипты на Python, даже если раньше этого не умели.
Учащиеся, завершившие три модуля курса, получат доступ к занятиям на онлайн-платформе CESPA для бесплатного изучения английского языка.
3. Нетология
- Продолжительность: 11 месяцев (64 часа теории и 252 часа практики).
- Цена:от 5895 рублей в месяц с оплатой в рассрочку.
- Студенты: системные администраторы, начинающие DevOps-инженеры, программисты, тестировщики.
- Формат: вебинары, домашнее задание с отзывами экспертов, практическое обучение и облачная диссертация.
- Трудоустройство: помощь в составлении резюме, поиске работы и подготовке к собеседованию. < /ул>
- Продолжительность: 2 месяца (11 блоков и 11 мастер-классов).
- Стоимость:25 000 руб. за весь курс (19 000 руб. для первых 25 студентов).
- Студенты: системные администраторы, начинающие DevOps-инженеры, программисты, тестировщики.
- Формат: видеолекции, домашние задания и отзывы наставников.
- Гарантия трудоустройства: помощь в написании резюме, консультации по основным моментам при приеме на работу.
- Продолжительность: в своем темпе (шесть модулей, 200+ заданий).
- Стоимость: 75 000 рублей за весь курс (с рассрочкой на 10 месяцев).
- Студенты: сетевые инженеры, системные администраторы, технические менеджеры, тестировщики, разработчики, начинающие DevOps-инженеры.
- Формат: практические задания, чат с разработчиками курса, круглосуточный обзор с подробным отзывом, видеолекции, мастер-классы.
- Гарантия трудоустройства: написание резюме.
Курс Netology DevOps Engineer позволяет опытным ИТ-специалистам перейти в новую профессию менее чем за один календарный год.
Студенты получают все, что нужно инженеру DevOps для работы. Это работа с Git, Linux и администрирование баз данных, автоматическая сборка и доставка с помощью Jenkins, GitLab CI и TeamCity, создание облачной инфраструктуры с использованием Terraform, написание скриптов и многое другое. Приятный подарок — расширенный курс Python и бесплатные уроки английского языка для IT-специалистов.
4. ProductStar
Освоить азы профессии можно на онлайн-курсе «DevOps: Быстрый старт» от ProductStar в кратчайшие сроки и в удобное для вас время. Основы включают методологию DevOps, основы Linux, знакомство с Git, CI/CD и Jenkins, упаковку приложений в Docker, управление конфигурациями с помощью Ansible, программирование в Bash и введение в Python. Не так уж и плохо для начала!
5. ЗАДУМАТЬСЯ
REBRAIN проводит онлайн-семинары для специалистов по инфраструктуре. Программа «DevOps-инженер» — это тоже на 90% практика, а точнее, более 200 задач. Никто не ограничивает вас во времени, поэтому вы можете проходить курс хоть до конца жизни. Но мотивированный ученик обычно укладывается в 6-8 месяцев.
Решая задачи, вы изучите весь стек технологий, который нужен DevOps-инженеру, — включая Git, Nginx, Terraform, Ansible, базы данных, инструменты CI/CD и мониторинга, Docker и Kubernetes. Отдельные модули посвящены популярным языкам программирования и тестированию.
Занятия проводят специалисты агентства Fevlake DevOps. Выпускники, помимо знаний и сертификата, получают неограниченный доступ ко всем материалам.