Найти тему
Yandex.Cloud

Почему профессии DevOps не существует?

Оглавление

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

Есть несколько определений профессии DevOps-инженера. Самое простое: это прокачанный сисадмин, умеющий кодить. Подробнее обязанности DevOps-инженера описаны на сайте RedHat.

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

Слегка сложновато, не правда ли? Для начала разберемся, что такое DevOps.

Принципы DevOps

DevOps описывается аббревиатурой CALMS:

Culture — культура разработки

Automation — автоматизация процессов

Lean — бережливость

Measurement — измерения

Sharing — распространение знаний

Разберем подробнее.

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

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

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

Измерения — измерять необходимо всё, а наблюдать нужно только за значимыми метриками. Остальное — чтобы в случае необходимости разобраться в ситуации.

Распространение знаний — открытые коммуникации между всеми участниками процесса, а также принятие ошибок как неотъемлемой части работы.

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

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

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

Так кто же такое DevOps?

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

Если статья оказалась полезной, ставьте 👍