[Перевод] Open Source для платформенного инжиниринга
Платформенный инжиниринг повышает качество и безопасность разработки программных продуктов благодаря гибкости и стандартизированным средствам контроля. Но как в этот подход вписываются Open-Source-стратегии?
Команда VK Cloud перевела статью о том, почему для платформенного инжиниринга совершенно необходимы Open Source-программы и технологии.
Достоинства платформенного инжиниринга
Платформенный инжиниринг может стать мощным двигателем трансформации бизнеса. Кроме того, он сокращает разрыв между нереалистичными требованиями высокой скорости разработки приложений (и ROI) и суровой реальностью, в которой живут большинство разработчиков. Многие из них и без того работают на пределе возможностей, а их всё просят поддержать новые амбициозные бизнес-цели.
Главное преимущество платформенного инжиниринга в том, что он снимает с разработчиков необходимость постоянно заново изобретать велосипед. Им становится проще выполнять требования компании. Теперь им не нужно бесконечно настраивать инфраструктуру, систему безопасности и выполнять другие базовые задачи. Зато можно делать то, что получается у них лучше всего, — создавать приложения и сервисы.
Давайте рассмотрим конкретный пример. Допустим, специалисты по разработке платформы создали платформу IDP. Она в числе прочего поддерживает работу с базами данных, которые соответствуют требованиям к аварийному восстановлению, отказоустойчивости и безопасности. В этом случае разработчики могут быстро приступить к созданию программных продуктов, не тратя время на подготовку, потому что все предварительные требования уже выполнены.
Совсем другое дело, когда команде разработчиков или владельцу сервиса нужно самостоятельно всё внедрить с нуля, чтобы заработала новая база данных. Команда, которая использует платформу IDP, продвигается гораздо быстрее и при этом у неё гораздо меньше задач по текущей техподдержке.
Чем Open Source хорош для платформенного инжиниринга
Чтобы создать команду, платформу IDP и адекватные рабочие процессы, нужно потратить много сил, которые окупятся в долгосрочной перспективе. Open Source может и должен играть ключевую роль в этой работе. У него миллион преимуществ и для специалистов по разработке платформы, и для разработчиков, которые выигрывают от её создания. Давайте рассмотрим несколько конкретных преимуществ, которые Open Source может предложить для стратегии платформенного инжиниринга.
1. Платформонезависимость. В отличие от многих закрытых, Open Core или проприетарных решений, с Open-Source-технологиями владельцу платформы проще предложить разработчикам одинаково удобные условия разработки независимо от того, с какими поставщиками инфраструктуры или облачных сервисов они сотрудничают. Сегодня всё больше компаний работают в гибридной или мультиоблачной среде. Возможно, для них это будет особенно важно.
2. Привлечение квалифицированных сотрудников. При использовании Open-Source-программного обеспечения для платформы IDP выше шансы нанять сотрудников с нужным опытом работы, при этом им не придётся тратить много времени на онбординг. Из-за популярности многих современных облачных Open-Source-сообществ — будь то базы данных, Kubernetes или инструменты безопасности — неизменно растёт количество профессионалов, обладающих необходимыми навыками. Более того, ИТ-специалисты хотят работать там, где используемые ими инструменты позволяют реализовывать другие возможности. А это более вероятно с Open Source, а не с проприетарными системами. К тому же, подключив локальную платформу к внешним Open-Source-платформам, можно компенсировать кадровый дефицит и использовать необходимый опыт работы.
3. Безопасность. Когда-то корпоративные ИТ-команды сомневались в безопасности Open-Source-решений. Сегодня этот миф развенчан. Уровень прозрачности этого ПО, особенно проектов, реализуемых известными организациями с продуманным менеджментом, оптимизирует безопасность платформенного инжиниринга. Просто обращайтесь к проектам с хорошей репутацией и проверенными технологиями.
4. Модульность. Open-Source-ПО позволяет разрабатывать и менять код в соответствии с вашими актуальными требованиями, не ужимая их до возможностей вендора или его планов разработки продукта. А когда такие изменения делают доступными для всего сообщества, разработка и поддержка ПО становятся демократичнее для всех пользователей.
Как с помощью Open Source начать платформенный инжиниринг
Как минимум Open Source позволяет начать с малого. Определите свои недочёты в платформе и условиях работы разработчиков и выберите надежное Open-Source-решение, чтобы закрыть эти потребности. Например, если вам в компании не хватает качественного решения для горизонтального масштабирования хранилища данных, подыщите подходящий кейс или команду, которой удалось решить задачу вроде вашей — вполне подойдёт Open-Source-версия Apache Cassandra, — и займитесь реализацией этих возможностей для сотрудников компании.
Во-вторых, с помощью Open-Source-технологий можно упростить для разработчиков внедрение, тестирование, эксперименты и исследования, а это совершенно необходимое условие для успешного развития платформы. Помните: в вашей конкурентной борьбе подойдёт любая новинка, на которую они сами набрели!
Наконец, команды по развитию платформы должны помогать разработчикам создавать продукты, по умолчанию соответствующие всем заданным требованиям. И это гораздо проще сделать, если полагаться на проверенные поддерживаемые Open-Source-технологии. Такая работа очень отличается от стихийной активности, когда разработчики используют всё, что им заблагорассудится, потому что никто не предоставляет им то, что нужно. Интерес к платформенному инжинирингу во многом оправдан, а применение Open-Source-стратегии поможет реализовать эту трансформацию эффективнее, быстрее и дешевле.