Разработка веб-системы для партнерской сети системообразующего банка

2020-2021
Мы помогли внедрить новые IT-решения, которые помогают развитию партнерской программы — сотрудничеству с юридическими лицами и предпринимателями, готовыми участвовать в расширении клиентской базы.
React
TypeScript
MobX
REST API
Apache Kafka
Webpack
Jest
Java
Spring
JUnit
Системообразующий банк, который активно работает над привлечением клиентов и совершенствует инструменты для эффективной лидогенерации.

Наш клиент

Банк создавал концепцию новой IT-архитектуры:

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

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

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

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

Задача

Команда проекта

Проджект-менеджер:
анализировал бизнес-требования заказчика, контролировал сроки, приоритезировал задачи и управлял процессом разработки новых релизов.

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

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

3 frontend-разработчика:
создавали интерфейсы для внутренних и внешних пользователей.

Команда со стороны заказчика — бизнес-аналитики, системные аналитики и продакт-оунер — проводили анализ legacy-системы и ставили бизнес-задачи. Solution-архитектор участвовал в построении интеграций с обширной архитектурой сторонних систем банка. QA- и devops-инженеры участвовали в построении системы контроля качества разработки и CI/CD.

Технологический стек

Архитектура

Мы использовали классическую микросервисную архитектуру. Такой подход к разработке позволил выстроить систему из независимых сервисов, которые взаимодействуют друг с другом через http и очереди сообщений. При необходимости можно внести изменения в любой сервис — остальные не будут затронуты, и систему не придётся собирать заново.
Данные из старой базы Oracle перенесли в новую, более надёжную PostgreSQL с «открытой» лицензией. Она не уступает в производительности — при этом проще и доступнее в плане техподдержки. Так мы минимизировали риски для бизнеса, связанные с использованием западного программного обеспечения.
1
2

Данные

Backend

Backend-код legacy-системы был написан на языке программирования PHP. Для нового кода использовали Java — гораздо более безопасное решение с повышенной защитой от ошибок, уязвимостей и атак. Фреймворк Spring Boot упростил развёртывание микросервисов и повысил продуктивность разработки.
В качестве frontend-платформы выбрали библиотеку React. Она обеспечивает быструю загрузку страниц, уменьшает вероятность ошибок и в целом улучшает пользовательский опыт. Для создания единой информационной платформы впервые использовали Module Federation — эта технология позволяет встраивать модули одного пользовательского интерфейса в другой. Банк сможет создавать и интегрировать свои информационные системы в разработанную нами платформу, вносить изменения и развивать их независимо от других систем.
3
4

Frontend

DevOps

Для автоматизации развёртывания применяли devops-инструменты. Так, благодаря контейнеризации в Docker, мы изолировали программное обеспечение, чтобы быстро и безопасно тестировать его в разных операционных системах. Контейнерные образы собирали на платформе Red Hat OpenShift через TeamCity — гибкое решение для управления сборкой и повышения производительности. Ещё использовали платформу репозиториев Bitbucket — она стала центром для совместной работы команды, сделав процесс разработки прозрачным для всех специалистов проекта.
Интеграция системы электронного документооборота помогла нам реализовать решение и избавить заказчика от бумажной рутины. Оператором ЭДО и её интеграции с банковскими системами стал Контур.Диадок. Провайдер КриптоПро поддерживает процесс подписания документов — он шифрует и защищает данные.
5
6

Интеграция

Что разработали

Что сделали:
Создали единую платформу — в нее встроены информационные системы для партнерских услуг по разным направлениям: расчетно-кассовое обслуживание, страхование, автокредитование, эквайринг.
По каждому из направлений партнеры, зарегистрированные в системе, привлекают лиды для банка.
Как работает:
Поддержка процесса лидогенерации банковских продуктов
Что сделали:
Разработали внешний интерфейс для компаний, с которыми сотрудничает банк.
Как работает:

Регистрация новых партнеров и управление партнерскими пользователями

Партнер-руководитель, например, ИП или менеджер юридического лица, управляет сотрудниками компании - теми, кто непосредственно занимается лидогенерацией.
Что сделали:
Внедрили канал для идентификации пользователя с последующим перенаправлением в определенные разделы платформы. Интегрировали канал с другими сервисами банка.
Сотрудники банка открывают партнерам доступ к разделам. Когда пользователь авторизуется и аутентифицируется в системе, он попадает в нужный интерфейс. Например, партнер оказывает услуги автокредитования и страхования. Он вводит логин и пароль и видит перед собой меню двух необходимых информационных систем. А меню для партнеров по консалтингу он не видит, хотя эта система встроена в ту же платформу.
Как работает:

Управление доступом пользователей

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

Прием заявок от потенциальных партнеров

Что сделали:
Обеспечили возможность передачи подписанных документов партнерам в электронном виде, чем значительно ускорили процесс заключения договора и онбординга.
Как работает:

Электронный документооборот

Теперь все этапы — подача заявки, скрининг, сбор, подписание и отправка документов — занимают меньше часа. Скорость принципиальна для банка, ведь партнеры могут находиться в удаленных регионах России.
Что сделали:
Добавили новые функции, которые позволяют оперативно получать информацию об эффективности бизнес-процессов.
Как работает:

Выгрузка отчетов, дашбордов, статистики

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

Особенности проекта

В конце марта 2022 года проект вышел в продакшн. Команда CosySoft полностью выполнила задачи: мы перенесли функционал на новый стек, встроили IT-решения по работе с партнерами в обновленную архитектуру, внедрили электронный документооборот.

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

Результат