Cloud Native технологии в белорусском банкинге в эпоху неопределенности. Опыт и планы

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

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

Cloud Native активно развивается в мире, а вот для банковских проектов в Беларуси это новая тема. Давайте обсудим развитие облачных технологий на примере Альфа-Банка в Беларуси. В нем я отвечаю за цифровую трансформацию.

Что такое производственная система банка и при чем здесь Cloud Native?

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

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

  2. Private Cloud. Так как практически любая банковская операция подразумевают работу с персональными данными, то тут требуется повышенный уровень защищенности. Поэтому когда мы говорим об облачным технологиях применительно к банку, то говорим не о публичном облаке, а о нашем собственном облаке или Private Cloud. При этом такое частное облако может быть размещено как на наших собственных серверах, так и в публичных Data-центрах.  Просто в случае с публичным Data-центром оно будет выделено исключительно под нас, обособлено и, по сути, являться нашим частным облаком.

  3. Микросервисы. В Cloud Native реализуется архитектурный подход к созданию систем и доведению их до «прома», при котором приложения разрабатываются как совокупности относительно небольших обособленным сервисов. Каждый сервис реализует свои функции. Например, микросервис «депозиты» реализует только функции работы с депозитами, микросервис «карты» - карточные. Особенность в том, что каждый микросервис может быть доработан, перезапущен и масштабирован независимо от других сервисов в работающем приложении. Что особенно важно – это позволяет проводить частые обновления наших систем без их остановки.

  4. API. Микросервисы общаются между собой через стандартизированные программные интерфейсы - API. Один из принципов нового подхода - организация процесса разработки, при которой разработка любого сервиса стартует с API-контракта.

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

Зачем нужно инвестировать в создание собственной производственной системы?

Банки сами по себе клиентам не особенно нужны. А вот банковские операции – очень. И они должны быть удобными, быстрыми и работать безотказно.  Целый ряд банковских функций уже реализован технологическими гигантами. А нацеленные на развитие банки по всему миру трансформируются в технологические компании. И тут уже играет роль масштаб. Среднестатистический банк имеет сотни бизнес-процессов и огромную паутину приложений и систем, их поддерживающих. Чтобы развивать все это в современной парадигме, такой как Agile, нужны десятки scrum-команд. И при этом они должны быть максимально независимыми, иметь возможность быстро вносить изменения, проверять гипотезы, тестировать свои разработки и доставлять ценность до конечных пользователей без остановки систем.

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

Для себя очень четко определи, что банк должен быть: Быстрым, Гибким, Масштабируемым, Надёжным, Эффективным и Красивым. К этому и идем.

Как будет выглядеть архитектура после цифровой трансформации?

Команды должны быть максимально независимыми, поэтому на фронтах это модульные приложения на React, слой REST API, бизнес-логика - Cloud Native микросервисы на Java Spring, хотя тут может быть и Kotlin и .Net. Главное, это Сloud-native микросервисы с API, а конкретный язык реализации может быть разным. От монолитных систем на бэке в ближайшей время не отказываемся, а в будущем и над этим стоит подумать.

Вот как мы отразили эту архитектуру в своей стратегии:

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

Как устроена производственная система изнутри?

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

  1. Open source/стандарт отрасли. Выбираем лучшие решения, ставшие де-факто стандартами индустрии, при этом отдаем предпочтение Open Source. Максимально избегаем зависимости от одного вендера. Накапливаем экспертизу внутри (in-house).

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

В итоге общая концепция выглядит так:

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

Откуда у банка появилась экспертиза в облачных технологиях и продолжит ли банк и дальше инвестировать в развитие производственной системы в изменившихся условиях?

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

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

А в части дальнейшего развития, конечно, мы продолжим инвестировать. Без современной производственной системы и слаженной ритмичной работы банк просто не сможет конкурировать на рынке, быстро адаптироваться под изменяющие условия. Главные достижения еще впереди!

Так что если у вас экспертиза, опыт крутых проектов, желание развиваться – пишите нам на Sergey.Sheko@alfa-bank.by и присоединяйтесь к команде.

Источник: https://habr.com/ru/post/667836/


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

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

Как работают популярные счетчики веб или мобильной аналитики, например, Google Analytics или AppsFlyer? На сайт устанавливаются их коды или в приложение интегрируется мобильное SDK. Потом при каждом д...
В настоящее время существует множество видов навигации автономных беспилотных аппаратов и роботов.  В целом их можно разделить на навигацию внутри помещений – indoor...
В продолжение к недавнему релизу CSI-драйвера для Яндекс.Облака мы публикуем ещё один Open Source-проект для этого облака — Cloud Controller Manager. CCM необходим не только для кластера в це...
Более ста лет служба охраны лесов США нанимала мужчин и женщин для слежения за состоянием огромных лесных пространств с изолированных наблюдательных вышек. Эти наблюдатели, вооружённые лишь б...
Сначала хотел написать комментарий к неоднозначным сравнениям цены на продукцию Apple в статье, но текста получилось слишком уж много. Pochtoycom (на самом деле не только они) лукавят, сра...