Переход от вендорского решения на собственную платформу
- Analytics
- DevOps
- Data Engineer
- Software Engineer
- Architect
- Node.js
- Spring Boot (Java)
- Docker
- Red Hat OpenShift
- PostgreSQL
- Apache Kafka
- Rabbit MQ
- Prometheus
- Grafana
- ELK Stack

У вас есть задача?
Давайте обсудим?
О клиенте
Российский банк предоставляет услуги для 14 млн частных клиентов и 350 тыс. компаний. Пользователи могут дистанционно совершать депозитные, кредитные и расчетные операции, инвестировать в ценные бумаги и цветные металлы. Сейчас организация усиливает свой цифровой суверенитет и растит долю небанковских продуктов — развивает ПО для ведения бухгалтерии, систему ЭДО и пр.
О проекте
Компания использовала стороннее корпоративное программное обеспечение для поддержки ключевых бизнес-процессов. Однако со временем архитектура перестала соответствовать требованиям к масштабированию: высокая связанность компонентов замедляла разработку новых функций и тестирование. Также система требовала значительных ресурсов на сопровождение и не обеспечивала необходимую гибкость.
Описание задачи
Необходимо было преодолеть технические ограничения, создать On-Premise решение и реализовать более адаптивную архитектуру, а именно:
- Модернизировать legacy-монолит: разделение устаревшей системы на независимые сервисы с автоматизированным развертыванием и оркестрацией.
- Повысить отказоустойчивость и гибкости системы: внедрение репликации данных в реальном времени, механизмов автоматического восстановления после сбоев и балансировки нагрузки.
- Ускорить разработку новых функций за счет независимых команд: создание изолированных сред для параллельной работы команд над разными компонентами системы с гарантией совместимости.
Реализация
Архитекторы и Data-инженеры RedLab разбили процесс разработки на несколько ключевых блоков:
-
Анализ и декомпозиция монолита:
• Провели аудит системы, выделили 30 ключевых Бизнес-доменов (платежи, аутентификация, каталог продуктов и т.д.) с использованием Domain-Driven Design (DDD), что позволило ускорить принятие технических решений.
• Определили границы сервисов, минимизировав межсервисные зависимости. Удалось упростить сопровождение кода и снизить риски каскадных отказов. • Выявлили «горячие точки» монолита для Бизнеса и сфокусировали усилия на приоритетных зонах. -
Проектирование микросервисов:
• Реализовали 60+ независимых сервисов на Spring Boot (Java) для событийно-ориентированных задач. Это помогло увеличить масштабируемость решений и обеспечить гибкость в развитии новых фич.
• Внедрили Kafka для синхронизации данных между сервисами платежей и заказов, обеспечив надежную коммуникацию между компонентами и повысив устойчивость к сбоям.
• Разделили операции записи и чтения, путем выделения отдельных схем БД PostgreSQL. Получилось упростить масштабирование под разные типы нагрузки. -
Инфраструктура и DevOps:
• Перевели сервисы на Docker и оркестрацию через Kubernetes, что позволило ускорить развертывание новых компонентов.
• Настроили CI/CD в GitLab (автоматическое тестирование, деплой в Dev/Test/Stage/Prod). В итоге сократили время выхода в прод и уменьшили количество ошибок при релизах. -
Миграция данных:
• Перенесли данные из монолитной БД (Oracle) в распределенные хранилища PostgreSQL, обеспечив горизонтальное масштабирование.
• Применили стратегию Strangler Fig для поэтапного переноса функционала. Смогли сохранить непрерывность бизнес-процессов.
Результат
Переходите по ссылке, чтобы узнать об аутсорсинге ИТ-специалистов больше.