Поговорили о том, кому и почему в ближайшем будущем понадобятся навыки создания инфраструктурной платформы с помощью Kubernetes, с преподавателем Юрием Игнатовым, ведущим инженером Express 42.
Откуда берется спрос на платформенных инженеров?
В последнее время все больше компаний осознают необходимость в создании внутренней инфраструктурной платформы, которая была бы единой средой для разработки, подготовки релизов, выпуска и эксплуатации цифровых продуктов компании. Такая платформа содержит в себе системы и сервисы для управления вычислительными и сетевыми ресурсами, систему непрерывной интеграции, хранилище артефактов поставки, системы мониторинга и прочих сервисов, которые используют ваши команды разработки. Движение в сторону построения внутренних платформ и формирования платформенных команд началось несколько лет назад. Подтверждения тому можно найти в отчетах State of DevOps от организации DORA, публикациях от Gartner и книгах, вроде Team Topologies.
Основные преимущества платформенного подхода к управлению инфраструктурой компании заключаются в следующем:
- Продуктовые команды не отвлекаются от развития своих продуктов на решение инфраструктурных задач.
- Платформенная команда, ответственная за развитие инфраструктурной платформы, учитывает потребности продуктовых команд в компании и создает решения специально под внутренние нужды.
- Компания накапливает внутри опыт, который легко переиспользовать, например, при запуске новой продуктовой команды или при формировании стандартов или общих практик в компании.
Если у компании получилось прийти к такому подходу, со временем внутренняя инфраструктурная платформа может стать для команд разработки удобнее, чем сервисы облачных провайдеров, потому что она создавалась с учетом особенностей и потребностей команд, накапливала их опыт и специфику. Все это приводит к увеличению производительности продуктовых команд, а, значит, полезно для бизнеса.
Почему именно Kubernetes?
В качестве основы для создания инфраструктурной платформы можно использовать разные инструменты. Раньше это был Mesos, сейчас помимо Kubernetes вы можете использовать Nomad и, конечно же, никто не ограничивает вас в создании собственных «велосипедов». И все же преобладающая доля компаний предпочитает строить платформу именно на Kubernetes. Вот за что его ценят больше всего:
- Поддержка современных инженерных практик таких как «инфраструктура как код».
- Множество необходимых командам механизмов «из коробки». Например, управление вычислительными ресурсами, механизмы управляемого развертывания приложений и обеспечение их отказоустойчивости.
- Огромная экосистема, в которой есть инструменты для решения различных задач, поддержка провайдерами облачных услуг.
- Развитое комьюнити: десятки конференций по всему миру, внушительный список контрибьютеров, наличие сертификации и сертифицированных специалистов, образовательных программ по этому инструменту.
Kubernetes — можно назвать новым стандартом индустрии, это вопрос времени, когда ваша компания начнет его использовать.
К сожалению, все это достается не бесплатно: вместе с приходом с Kubernetes и технологии контейнеризации в процессах и инструментах, которые команда использует в повседневной работе, многое претерпевает изменения:
- Изменяется подход к управлению вычислительными ресурсами.
- Меняется способ развертывания и конфигурации приложения.
- Необходим другой подход к организации сервисов мониторинга и логирования.
- Появляется необходимость в создании новых интеграций между сервисами, входящими в состав платформы, адаптации существующих скриптов автоматизации.
Даже локальное окружение разработчика и процедура отладки приложений тоже подвергаются изменениям.
Компании могут осуществить переход на инфраструктурную платформу и ее обслуживание своими силами, развивая компетенции сотрудников или нанимая необходимых специалистов. Случаи, когда стоит делегировать эти процессы, тоже встречаются часто, например, если у компании нет возможности перевести фокус команды с развития продукта на создание новой инфраструктуры, нет возможности провести большой внутренний R&D или есть недопустимые риски, связанные с самостоятельным созданием новой инфраструктуры и переводу продуктовых команд на нее – тут лучше обратиться за помощью к компаниям, которые уже не раз проходили этот путь.
Новые компетенции работы с инфраструктурной платформой понадобятся не только администраторам (специальность, которая сейчас трансформируется в инфраструктурного инженера), но и разработчикам. Разработчик должен понимать, как запущено и работает его приложение в бою, он должен уметь использовать экосистему на максимум, уметь отладить приложение или изменить процедуры развертывания и конфигурирования. Также без этих знаний не обойтись и техлидам: нужно провести большое количество R&D, выбрать подходящие инструменты, изучить их ограничения, найти подходы к интеграции между инструментами, входящими в состав платформы и предусмотреть различные сценарии использования платформенных сервисов продуктовыми командами.
Если развернуть Kubernetes, в том числе на мощностях облачных провайдеров, не так уж и сложно, то вот перевести все процессы разработки и эксплуатации, адаптировать приложения, интегрировать между собой десяток новых для команды инструментов и прочее — действительно проблематичная задача, требующая глубокого понимания процессов и большого количества коммуникации со всеми участниками создания ваших продуктов.
И всю эту информацию мы собрали на нашем онлайн-курсе «Инфраструктурная платформа на основе Kubernetes». За 5 месяцев практики вы освоите:
- Как устроен Kubernetes
- Как реализуются DevOps-практики с его применением
- Какие инструменты экосистемы уже достаточно зрелые для использования в бою и как их интегрировать между собой.
В отличие от других образовательных программ мы делаем акцент на экосистеме и нюансах эксплуатации Kubernetes-кластеров, а ведь именно в этом возникают сложности у компаний, которые решили перейти на свою инфраструктурную платформу.
Завершив курс, вы будете обладать квалификацией платформенного инженера и сможете самостоятельно создать инфраструктурную платформу в своей компании. Что, кстати, и делают у нас в качестве проектной работы некоторые студенты, получая фидбек и поддержку преподавателей. Также знаний и навыков будет достаточно, чтобы подготовиться к сертификации CNCF.
Важно отметить, что для освоения этих навыков необходимо уверенное знание DevOps практик и инструментов. По нашим наблюдениям рынка вакансий, после обучения такой специалист может смело рассчитывать зарплату 150-200 тыс. рублей.
Если вы как раз такой специалист с опытом использования DevOps-практик, приглашаем вас пройти вступительный тест и познакомиться с программой курса подробнее.