Универсальный солдат или узкий специалист? Что должен знать и уметь DevOps-инженер

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!


Технологии и инструменты, которые нужно освоить DevOps-инженеру.

DevOps — восходящий тренд в IT, популярность и востребованность специальности постепенно растет. У GeekBrains не так давно открылся факультет DevOps, на котором готовят специалистов соответствующего профиля. К слову, профессию девопса часто путают со смежными — программированием, системным администрированием и т. п.

Для того чтобы прояснить, что вообще такое DevOps и для чего нужны представители этой профессии, мы поговорили с Николаем Бутенко, архитектором Mail.ru Cloud Solutions. Он принимал участие в разработке программы курса факультета DevOps и одновременно преподает студентам третьей четверти.

Что вообще должен знать и уметь хороший DevOps?


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

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

Что нужно знать и уметь? Вот то, что является важным:

  • Нужны хорошие soft skills, поскольку требуется одновременно взаимодействовать с несколькими отделами внутри одной компании.
  • Аналитическое структурное мышление, чтобы смотреть на процессы сверху и понимать, как их оптимизировать.
  • Надо самому разбираться во всех процессах разработки и эксплуатации. Только тогда их можно оптимизировать.
  • Нужны еще и отличные навыки планирования, анализа и проектирования для создания унифицированного производственного процесса.

Все представители DevOps одинаковы или есть различия внутри специальности?


В последнее время возникло несколько ответвлений внутри одной специальности. Но в целом, в понятие DevOps включены в основном три направления: SRE (администратор), Developer (разработчик), Manager (отвечает за взаимодействие с бизнесом). DevOps-специалист понимает потребности бизнеса и организовывает эффективную работу между всеми путем создания унифицированного процесса.

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


К сожалению, что в России, что за границей работодатели далеко не всегда понимают суть DevOps. Просматривая публикуемые вакансии можно заметить, что называя вакансию DevOps, компании ищут то сисадминов, то Kubernetes-администраторов, то вообще тестеров. Особенно сильно бросается в глаза весьма разнородный фарш знаний и умений в вакансиях по DevOps с HH.ru, LinkedIn.

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

Чем может помочь DevOps компании, в которой работает?


Одна из важнейших метрик для бизнеса — Time-to-Market (TTM). Это время выхода на рынок, то есть отрезок времени, в течение которого выполняется переход от идеи создания продукта к выводу продукта в продажу. TTM особенно важен для тех отраслей, где продукты быстро устаревают.

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


В итоге некоторым ритейлерам удалось ускорить процесс вывода необходимых для приложений и сервисов буквально за день. А это — важнейший фактор конкуренции в условиях современного рынка.

Кто может стать DevOps?


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

Для того, чтобы лучше понять концепцию и получить представление о необходимых знаниях и навыке, стоит прочитать «Руководство по DevOps», изучить «Проект Феникс», а также методологию «Философия DevOps. Искусство управления IT». Еще одна отличная книга — «DevSecOps The Road to Faster, Better and Stronger Software».

Лучше всего DevOps дается тем людям, кто обладает аналитическим складом мышления и способен использовать системный подход. Сложно сказать, сколько времени понадобится новичку для того, чтобы стать классным DevOps’ом. Здесь все зависит от начальной базы, а также от окружения и задач, которые нужно решать, плюс от масштаба компании. В числе компаний, которым нужны девопсы много технологических гигантов: Amazon, Netflix, Adobe, Etsy, Facebook и Walmart.

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

Для того чтобы стать таким специалистом, нужно изучать новые технологии, инструменты, использовать системный подход в ходе работы и грамотно применять автоматизацию. Без нее очень сложно, если вообще возможно, грамотно организовать DevOps.
Источник: https://habr.com/ru/company/mailru/blog/496408/


Интересные статьи

Интересные статьи

Введение С тех пор, как нейронные сети начали набирать популярность, большинство инженеров стали решать многие из задач ПО в области Public Safety методами deep learning. Несмотря на...
В этой статье мы рассмотрим, как система управления 1С-Битрикс справляется с большими нагрузками. Данный вопрос особенно актуален сегодня, когда электронная торговля начинает конкурировать по обороту ...
Среди советов по улучшению юзабилити интернет-магазина, которые можно встретить в инете, один из явных лидеров — совет «сообщайте посетителю стоимость доставки как можно раньше».
Для обучения в жизни нет лучшего времени, чем сегодня. На дворе 2019 год, и тема DevOps сейчас актуальна, как никогда. Говорят, что дни системных администраторов прошли, как миновала эпоха мей...
Если Вы используете в своих проектах инфоблоки 2.0 и таблицы InnoDB, то есть шанс в один прекрасный момент столкнуться с ошибкой MySQL «SQL Error (1118): Row size too large. The maximum row si...