Бои в гексагоне: как на архитектуре Ports & Adapters построить омниканальное решение
Доклад отклонён
Целевая аудитория
Тезисы
Перед командой стояла задача разрабатывать омниканальный банковский проект для платежей, с минимумом критических багов и быстро.
Это осложняется тем, что каждое действие пользователя скрывает за собой много операций - вызовы смежников, тяжелые запросы к БД. Плюс, как следует из слова "омниканальный" - одновременно существуют требования как предоставлять одинаковый опыт для пользователей, так и быть готовыми любую логику переписывать в несколько вариантов, потому что либо каналы технически устроены по-разному, либо новый функционал выкатывается неравномерно.
Чтобы избежать случайных ошибок и нежелательных побочных эффектов при разработке, сама архитектура должна направлять эти процессы и страховать команду от просачивания логики туда, куда не следует.
При дизайне решения выбрали гексагональную архитектуру и модульный монолит.
Такое решение содержит меньше неявных зависимостей, чем классический монолит, а развивается проще, чем микросервисы.
Этот выбор позволил создать систему, отвечающую высоким требованиям к продукту в банковской сфере, сохранив поддерживаемость и возможность быстро перейти на микросервисы в будущем, на стадии поддержки проекта.
Разработчик бэкенда на Spring, пишу код на Java и Kotlin. Работаю на проектах ключевых заказчиков в финтехе и госсекторе.
Иннотех
Видео
Другие доклады секции
Бэкенд, теория программирования