ВТБ провел третий ежегодный хакатон VTB API hackathon 2023. Цель конкурсантов – за 3 недели разработать готовое решение на основе публичных программных интерфейсов банка. Также участники могли посостязаться и в более сложных инженерных задачах в двух параллельных треках:
- разработать инструмент для защиты API по ГОСТ;
- создать отказоустойчивый слой репликации данных между кластерами CEPH.
Подробнее о мероприятии – в нашем кейсе.
Результаты хакатона
VTB API hackathon стартовал 25 сентября с презентации задач хакатона. Состязание началось 1 октября, и к этому времени регистрацию прошли 804 участника, которые объединились в 243 команды. На разработку прототипа конкурсанты получили 5 дней. Через платформу Codenrock жюри приняло 54 работы.
Но главное соревнование было еще впереди. VTB API hackathon – уникальный хакатон, который нацелен на получение рабочего решения, а не просто концепта или идеи. Поэтому для участия в финальном этапе судьи отобрали 37 проектов, авторы которых наиболее удачно выступили с презентацией своего продукта.
Команды получили еще 10 дней, чтобы доработать свои прототипы при поддержке приглашенных экспертов. До итогового питча смогли добраться 22 решения, среди которых жюри и выбрало 7 финалистов.
Призовой фонд хакатона составил 1 800 000 рублей. Финал прошел 21 октября в технополисе «Москва». Также еще одного победителя в треке по созданию приложения на базе API банка определили эксперты ассоциации «Финтех» в специальной номинации – команда получила денежный приз.
Задачи хакатона
В 2023 году на VTB API hackathon число треков было расширено до трех, чтобы предложить участникам по-настоящему сложные инженерные задачи.
Трек 1. Открытые API: создание приложения на основе открытых API ВТБ
- Задача участников – создать продукт на основе публичных API-стандартов OpenBanking и API ВТБ. Стандарт аутентификации – Open ID Connect.
- Решаемая проблема. Сейчас взаимодействие по открытым интерфейсам между банками не унифицировано. ВТБ активно внедряет стандарты открытого банкинга. Поэтому команды могут самостоятельно определять, какую пользовательскую проблему хотят решить. Главное условие – использовать публичные API ВТБ.
- Итоговый результат – мобильное приложение, веб-сервис или чат-бот. Предоставить необходимо исходный код продукта, демоверсию, документацию и презентацию.
Трек 2. Алгоритмы ГОСТ: создание инструмента для обеспечения безопасности синхронного и асинхронного взаимодействия с API
- Задача участников – создать инструмент для безопасного обмена сведениями, содержащими персональную информацию, между различными системами. Решение должно поддерживать автоматическое определение шифрования, расшифровку данных, проверку их целостности и отправку ответа.
- Решаемая проблема. Информация в современном мире – ключевой актив, а ее защита – приоритет. API – популярный способ обмена данными, в том числе персональными. Разработка инструмента, соответствующего стандартам ГОСТ, гарантирует безопасность сведений при взаимодействии систем через программный интерфейс.
- Итоговый результат – продукт с надежным и безопасным обменом персональными данными между системами и минимальными рисками их утечки или искажения. Решение должно соответствовать стандартам ГОСТ, использовать только российские сервисы и open source библиотеки.
Трек 3. S3 CEPH: создание отказоустойчивого слоя репликации и дупликации данных между кластерами CEPH
- Задача участников – создать слой или инструмент с функциями быстрого восстановления данных при сбое с минимальной потерей информации. Решение должно поддерживать передачу сведений с авторизацией по JSON Web Token, проверять логин в базе данных и производить запись в контейнеры с использованием AWS SDK.
- Решаемая проблема. Доступность и безопасность сведений требует отказоустойчивой системы хранения. Репликация данных между кластерами CEPH обеспечивает высокую доступность информации даже при сбоях в одном из них.
- Итоговый результат – решение, которое обеспечивает непрерывный доступ к данным для клиента, минимизирует потерю сведений при сбое, эффективно использует ресурсы хранения и поддерживает одновременную передачу нескольких файлов.
Эксперты
Победители
Трек 1. Создание приложения на основе открытых API ВТБ:
🥇 1 место – команда «Разноработчики», приложение для совершения совместных покупок и оплаты счетов.
🎁 Призы от Финтех Хаба Банка России получила команда «Дружба».
Трек 2. Создание инструмента для обеспечения безопасности API:
🥇 1 место – команда Mozhayka Team, решение на базе безопасной микросервисной архитектуры, обеспечивающей высокую надежность банковского API c возможностью добавлять поддержку дополнительных криптографических алгоритмов.
🥈 2 место – команда Vasily-58227, продукт, который перехватывает клиентские REST-запросы, шифрует и отправляет данные по websocket в прокси-фасад API сервисов.
🥉 3 место – команда Guardians, программа, которая поддерживает основные криптографические алгоритмы и ГОСТ.
Трек 3. Создание отказоустойчивого слоя репликации и дупликации данных между кластерами CEPH:
🥇 1 место – команда Inview, слой репликации, использующий протокол Tus и AWS SDK для передачи файлов.
🥈 2 место – команда qwerty, архитектура, состоящая из UI-панели, сервиса резервирования и контроля репликации, FTPS сервера, REST API и гибкой ролевой модели с разграничением прав доступа.
🥉 3 место – команда «Гигачад», решение на Kotlin с использованием spring webflux.
Отзывы организаторов хакатона
Всегда приятно, когда нет однозначного лидера. В жюри были споры. Это значит, что мы не зря весь месяц занимались проведением хакатона. Треку «Создание приложения на основе API» уже три года. Он популярен. В этот раз победитель представил решение, которое можно переиспользовать не только в сфере банковских услуг. Спасибо всем, кто участвовал в треках, прослушивал питчинги и оценивал проекты.
Игорь Бессчастный, лидер Платформы API ВТБ
ВТБ старается сделать свои приложения для клиентов лучше, быстрее, удобнее. Это особенно важно, когда данные перетекают «естественным образом», и их не нужно запрашивать. Я надеюсь, что предложенные решения помогут клиентам банка бесшовно получать всю информацию, необходимую для повседневной жизни.
Наш хакатон отличается от других. У участников было больше времени – месяц работы, уверен, что непростой. Все идеи, что принесли команды, интересные, за ними стоят усилие и талант. Эти решения найдут воплощение в будущем. Ждем вас в следующий раз.
Сергей Безбогов, заместитель руководителя Технологического блока, старший вице-президент Банка ВТБ