Александр Анищенко — директор по финансовым технологиям компании «Синимекс»
В последние несколько лет, когда речь заходит о технологическом тренде децентрализации, в первую очередь возникает ассоциация с технологиями распределенных реестров (блокчейн). Однако в действительности это лишь вершина айсберга. На практике тема не только более широкая, шире и сам технологический тренд — он охватывает и архитектуру программных решений, и «архитектуру» построения проектных команд и управления ими. Сегодня крупные компании все больше уходят от монолитных технологических решений к микросервисным, а со временем этот процесс станет более динамичным.
По своей сути микросервисы — это компоненты систем, которые формируются на основе бизнес-потребностей и проектируются практически независимо друг от друга, они развертываются автономно и оказывают минимальное влияние друг на друга при изменениях. Таким образом обеспечивается гибкость — например, для создания и развития приложений: поскольку компоненты развертываются автономно. Кроме того, у такого рода децентрализации есть и другие преимущества: улучшение возможности масштабирования, повышение отказоустойчивости, обеспечение безопасности и скорости внесения изменений, и особенно сокращение времени поставок. Именно поэтому все больше крупных компаний отказываются от централизованного управления системами, стремясь к гибкости и оперативности, но не всегда достигают желаемого результата. Основная причина неудач кроется в том, что только технологическими изменениями не обойтись. Важно понимать, что при переходе на микросервисы, помимо реализации новых систем, необходимы значительные изменения и в структуре самих процессов. В стратегии перехода на микросервисную архитектуру вопрос изменения организационного подхода часто более важен, чем использование новых технологических платформ.
Разделение программного обеспечения на отдельные небольшие независимые модули разделяет ответственность за качество работы всего продукта между различными исполнителями. Для поддержания качества на высоком уровне участники процесса создания программного обеспечения должны обладать высокой степенью личной ответственности, инициативности и более высоким уровнем компетентности. Контроль при таком подходе необходимо выстраивать не с помощью регламентов и инструкций, а при помощи правил и ограничений, наделяя сотрудников большим количеством полномочий.
Принципиально иной подход к формированию команд и определению функциональной роли каждого из участников при переходе на микросервисную архитектуру требуется еще по ряду причин. Например, процессная инфраструктура, рассчитанная на релизный цикл большой длительности, не справляется с обслуживанием большого количества частых поставок.
По итогам практического опыта можно сказать, что децентрализация — это не просто внедрение определенных технологий и следование алгоритмам. Это культура, которая изменяет подход к функционированию систем в целом, с фокусом на гибкости и скорости. Именно принятие самого подхода, подкрепленное программными решениями и квалифицированной командой, способствует активному применению децентрализации в самых различных отраслях.