Платформенный инжиниринг как следующий этап развития DevOps

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

Подходы к оптимизации процессов разработки и развертывания хорошо известны и задокументированы: DevOps, SRE, облачные сервисы вроде Containerum Kubernetes или DBaaS for PostgreSQL и т. д.

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

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

Что такое платформенный инжиниринг

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

Чем платформенный инжиниринг отличается от DevOps и SRE: сфера ответственности, масштаб, цели и задачи

Платформенный инжиниринг, DevOps и SRE (Site Reliability Engineering) — три концепции и методологии, используемые в информационных технологиях для оптимизации процессов разработки и поддержки программного обеспечения. Имея общие принципы и цели, они отличаются по сфере ответственности, масштабу и основным задачам. В зависимости от контекста работы и своих потребностей современные компании могут полагаться как на платформенных инженеров, так и на инженеров DevOps и SRE, чтобы обеспечить совершенство своих продуктов и услуг.

  • Сфера ответственности

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

  • Масштаб

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

  • Цели и задачи

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

Платформенный инжиниринг vs DevOps

  • Про фокус работы

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

  • Про процессы и методологии

Платформенные инженеры, как правило, следуют методологиям Agile с акцентом на доставку результата и непрерывность. Они стремятся создавать гибкую и эффективную инфраструктуру для разработчиков. DevOps со своей стороны охватывает более широкий спектр методологий и процессов, таких как CI/CD (непрерывная интеграция и доставка), автоматизация тестирования и контейнеризация.

  • Про область ответственности

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

Платформенный инжиниринг vs SRE

  • Про фокус работы

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

  • Про культуру и методологию

В работе SRE акцент делается на культуре надежности, где каждый в команде становится ответственным за надежную работу системы. Они часто руководствуются принципами «создать, измерить, настроить» и «служить абонентам». В то время как платформенные инженеры обычно следуют принципам Agile с акцентом на непрерывную поставку и итеративность.

  • Про область ответственности

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

DevOps vs SRE

  • Про роль и функции

В DevOps акцент делается на процессах и коммуникации между разными командами, в то время как SRE сосредотачивается на создании надежных систем и их поддержке.

  • Про размер команды

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

  • Про фокус

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

Этапы платформенного инжиниринга

Реализация платформенного инжиниринга требует тесного сотрудничества между разработчиками и операционными командами. Каждая компания может иметь свою собственную методологию, поэтому этапы варьируются в зависимости от специфики проекта. Мы перечислим шаги, которые являются общими и послужат руководством при создании и разработке платформы.

  1. Анализ требований 

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

  2. Проектирование архитектуры

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

  3. Разработка и тестирование 

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

  4. Внедрение и развертывание

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

  5. Поддержка и обновление

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

  6. Мониторинг и оптимизация

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


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

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

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

  • Экономить время и ресурсы разработчиков и делать их более продуктивными.

  • Масштабировать инфраструктуру в соответствии с потребностями приложения.

  • Создавать отказоустойчивые системы, чтобы обеспечить непрерывную работу и минимизировать время простоя.

  • Определять и реализовывать лучшие практики и стандарты в области развертывания и управления инфраструктурой.

  • Создавать стабильные и высокопроизводительные системы, оптимизированные для поддержки различных приложений.

  • Использовать различные технологии и платформы без необходимости решать проблемы совместимости.

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

Источник: https://habr.com/ru/companies/cloud_mts/articles/756730/


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

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

Если совсем коротко: «грамотный DevOps» (Literate DevOps) – это использование принципов «грамотного программирования» (Literate programming) для работы с инфраструктурой в виде кода. Термин Literate D...
Привет, Хабр! DevOps-инженеры нужны везде, но чаще всего их пока ищут крупные компании. Мы поговорили с Павлом Селивановым — сейчас он архитектор Yandex Cloud, а в прошлом долго и много работал в каче...
Современные ИТ инфраструктуры становятся все более сложными в развертывании и управлении. Если лет десять-пятнадцать назад вся инфраструктура средней компании могла измеряться парой десятков серверов ...
В этой статье я расскажу, как мы организовали последовательное автоматическое увеличение номера версии приложения при выполнении коммита в ветку main с помощью Azure DevOps Pipeline. Мы делаем этого д...
Привет Хабр!На связи маленькое, но гордое сообщество людей, делающих android-приложения безопаснее. Нашему сообществу в этом году исполнилось 3 года и было решено подвести некоторые...