Будущее финтеха или как мы победили на крупнейшем хакатоне Европы Junction, не выходя из дома

Мне доводилось в жизни участвовать в нескольких хакатонах, и мне всегда нравилась присущая подобным мероприятиям атмосфера интеллектуального месилова и духа предпринимательского безумия.

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

Будущее финтеха. Тизер Saavi — Healthy Finance

О хакатоне Junction

Junction — международный 48-часовой хакатон, с 2015 года ежегодно проводится в Хельсинки в первых числах ноября. Хакатон входит в Major League Hacking и является крупнейшим hack-мероприятием в Европе, объединяющим более 10,000 участников 107 национальностей со всего мира. За 5 лет проведения хакатона в списке партнёров и спонсоров числятся такие компании как: Spotify, Microsoft, Uber, Unity, Facebook, Vkontakte, McKinsey, Epic Games и многие другие.

Хакатон — это соревнование для программистов, дизайнеров и менеджеров в области IT, во время которого (24 или 48 часов) отдельный разработчик или команда решают какую-то проблему. Цель — создать полноценный рабочий прототип. Как правило, список проблем, которые предстоит решить в рамках хакатона, так называемых челленджей, формируют организаторы и спонсоры хакатона. Победителя определяет либо жюри, либо путём народного голосования.

Junction 2020 Connected Russian Edition
Junction 2020 Connected Russian Edition

Регистрация

Хакатоны — важная составляющая tech-сообщества. Как ни крути, людям необходимо тусоваться: знакомиться с новыми людьми, обмениваться информацией, получать новые знания. Но пандемия внесла свои коррективы, поэтому большинство крупных мероприятий в 2020 году либо отменились, либо перешли в онлайн.

Именно так и поступили организаторы Junction 2020 Connected, объявив, что участвовать в хакатоне можно будет из любой точки планеты.

Регистрация на сайте Junction заняла минут 15: помимо классических полей имя/фамилия/роль/работа, организаторы поинтересовались моими навыками, интересами, а также узнали возможные business opportunities: ищу ли я работу, партнёров и проч.

Веселуха и угар — важная составляющая хакатонов
Веселуха и угар — важная составляющая хакатонов

Спустя пару дней на почту пришли поздравления об успешной регистрации на мероприятие и дальнейшие инструкции. Помимо руководства для участников, организаторы уведомили о необходимости регистрации на Brella — ведущей платформе для проведения виртуальных мероприятий и выставок.

Brella собрали всё необходимое: встроенный чат, вкладка с основным расписанием ключевых мероприятий, стрим и вкладка с челленджами. Основная движуха происходила там, а на сайт Junction мы только заливали презентационные материалы и ссылки на GitHub.

Для тех, кому лень читать дальше — ниже финальное видео с демкой, здесь ссылка на код и презентация с описанием Saavi — Healthy Finance:

Демка Saavi — Healthy Finance

Команда

На хакатонах представлены разные команды: кто-то знакомится и собирает дримтим на самом мероприятии, а кто-то формирует состав заранее. На Junction допускались команды численностью до 5 человек.

Коллективное фото перед стартом хакатона, сори за качество, не успел отфотошопить
Коллективное фото перед стартом хакатона, сори за качество, не успел отфотошопить

Наша команда состояла из пяти человек, и из неё я никого, кроме Саши Зимина, который меня позвал, не знал. За пару дней до старта хакатона мы созвонились, познакомились и обсудили в лайтовом режиме кому какие технологии было бы интересно реализовать в рамках двух дней.

Команда у нас выдалась очень сильной. У Саши, например, 8 лет опыта в mobile development и product management в приложениях с более чем 100 млн. загрузок в AppStore, остальные трое ребят — бывшие сотрудники Prisma (iOS-приложение года 2016 по версии Apple): Антон Лебедев — Research and Development Lead; Андрей Володин — Lead Developer & Maintainer of cocos2d-objc game-engine; Егор Петров — Lead Subscriptions Monetization Model Development. У меня же богатый опыт в финансовой индустрии — работа в Barclays bank и собственные стартапы в области fin-tech.

Зачем участвовать?

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

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

Спонсоры и челленджи

В этом году на Junction было представлено 14 компаний-партнёров из разных индустрий: здравоохранение, финансы, еда, ритейл и проч. Каждая компания описала своё видение мира и стоящие перед ней трудности, чтобы предложить участникам подумать над решением и реализовать его в рамках двух дней мероприятия.

Список челленджей от партрнёров-спонсоров
Список челленджей от партрнёров-спонсоров

Выбор челленджа и определение идеи продукта

В стартовый день хакатона мы ознакомились со всеми представленными челленджами, и каждый выписал себе наиболее интересные. Далее мы созвонились по Zoom и сопоставили предпочтения друг друга.

В ходе обсуждения мы остановились на двух темах: "Персонализация финансов" от OP Financial Group и "Образовательная статистика" от Opetushallitus. По итогу выбрали финансы, решив, что там непочатый край для инноваций.

После выбора направления мы начали накидывать идеи по принципу «больше — лучше». В ходе часового брейншторма набралось 14 идей. После этого мы вкинули их в командный Telegram-чат и проголосовали за самые удачные. В финал вышли:

  • умная статистика трат;
  • AR-эффект: наводишь телефон на карту и видишь траты;
  • финансовая цель: фотографируешь вещь, и приложение говорит, сколько денег надо откладывать, чтобы накопить на эту вещь к определенной дате;
  • геймификация аналитики.

Забегая вперед, скажу, что и эти идеи претерпели изменения и то, что мы в итоге реализовали за субботу, отличается от первоначального плана.

Основной критерий на этапе брейншторма — количество. Больше идей — лучше
Основной критерий на этапе брейншторма — количество. Больше идей — лучше

В начале казалось, что все идеи, что мы накидали, никак не соотносились друг с другом, а ведь внятная презентация идей и их согласованность между собой — один из ключевых факторов при определении победителя, поэтому пришлось своевременно продумать не просто ЧТО мы делаем, но и ПОЧЕМУ мы это делаем.

Визуализация идеи от ядра до обложки
Визуализация идеи от ядра до обложки

Чтобы было легче продумать сторителлинг презентации, мы разбили идеи по трем уровням, тем самым придав им структурность и логичность:

  • Core concept. Ключевая концепция. В основу продукта лежит простая и понятная идея — умный анализ трат и демонстрация твоего “финансового здоровья”.
  • Key feature. Фишка, которая найдет отклик у аудитории. В нашем случае мы решили, что это будет анализ подписок пользователя. Тема очень актуальна для Европы, так сказать, решение на злобу дня.
  • Wow effect. Фича, которая произведет впечатление на аудиторию и запомнится. В нашем случае это была реализация показа статистики в AR.
Киллер-фича с демонстрацией статистика в AR

Распределение ролей и коммуникация

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

  • Александр Зимин, Хаслер. Придумывает идеи, координирует работу команды;
  • Андрей Крылов, Пикассо. Разрабатывает прототип, готовит необходимые визуализации и анимации;
  • Егор Петров, Джонни Шторм. Разрабатывает фронт-енд под iOS;
  • Андрей Володин, Маг 99 уровня. Работает с ARKit, реализовывает показ статистики в AR;
  • Антон Лебедев, Хакер Матрицы. Анализирует данные, полученных от ОР Financial Group, строит machine learning модель для анализа подписок и разрабатывает бекенд для iOS приложения.

Для коммуникации мы использовали три инструмента: Figma, Zoom и Telegram.

Figma

Основной инструмент для визуализации и валидации идей. У нас был совместный артборд, на котором каждый мог что-то нарисовать, после мы могли быстро что-то обсудить, валидировать — а я уже дальше занимался детальной проработкой дизайна.

Я перешел со Sketch'а в Figma, наверное, как год, а вот ребята открыли для себя этот чудесный редактор недавно, но все оценили его основные преимущества:

  • кроссплатформенность: одинаково работает как на винте, так и на маке, и не зависит от версий операционных систем;
  • синхронизация: можно одновременно, в режиме реального времени, работать над одним и тем же файлом. Скорость синхронизации — пушка.

Кому интересно, как устроен файл — ссылка на наш рабочий файл Figma.

Скрин из Figma, обсуждаем графики по осям XYZ в пространстве в AR
Скрин из Figma, обсуждаем графики по осям XYZ в пространстве в AR

Zoom

Главный инструмент для общения. В субботу, основной день хакатона, мы практически вообще не отключались от Zoom’а, а если надо было сосредоточиться, то просто отключали звук. Для этого в Zoom есть кнопка Leave audio. Zoom работал стабильно и полностью закрыл проблему живого взаимодействия внутри команды.

Командное фото. На 30 час работы кукуха начала немного ехать
Командное фото. На 30 час работы кукуха начала немного ехать

Telegram

У нас был один общий чат, в который мы сливали абсолютно всё: тексты, ссылки, файлы, куски кода, мемчики.

Мемесы — основа здоровой командной коммуникации
Мемесы — основа здоровой командной коммуникации

Егор слушает Lucy in the Sky with Diamonds и пилит код

26 часов нон-стопа

Утро субботы началось с часовой встречи с одним из партнёров финансовой группы OP, челлендж которого мы решали. Цель встречи — запитчить идеи и получить по ним фидбек.

Женщина по имени Паави очень бодро отреагировала на идеи и прототип, поделилась своими мыслями и инсайтами — в дальнейшем мы использовали эти знания на нашей презентации.

Что она нам сказала:

  • «Метрика финансового здоровья — это очень круто, круто, что вы провели параллель между финансами и здоровьем»;
  • «Пользователи не проактивные, не заставляйте их анализировать информацию, давайте им её разжеванной»;
  • «Пользователи действительно не понимают сколько они тратят денег на подписки, тема очень актуальна»;
  • «В финансовых приложениях мало эмоций и энтертейнмента, интересно как вы решите эту задачу с помощью AR».

В основной день — субботу — мы провели лишь одну встречу, которой было вполне достаточно. После этой встречи: Zoom, Figma, Xcode — нон-стопом до 9 утра воскресенья.

Трудности и подходы к решению проблем

Трудностей, с которыми мы столкнулись, было предостаточно, начиная от возникающих конфликтов внутри кода на финальной стадии компиляции, заканчивая температурой 38.1 Егора, который до последнего героически пилил фронт на iOS. Но всё это удалось преодолеть, так как изначально мы ставили перед собой цель делать всё по фану.

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

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

Этот подход был реализован на 100%, поэтому за отведенное время мы всё успели, и все в итоге остались довольны результатом.

А Андрею Володину, например, было важно сделать что-то запредельное из области sci-fi. И поскольку у него был опыт работы с ARKit, то выбор на реализацию фичи с показом статистики в AR, прикрученной к кредитной карте, пал не случайно.

До старта хакатона мы также решили — никаких фейков. Все делаем по-честному. Если замахиваемся на AR или machine learning, то это должно работать. На этой почве получилась интересная история.

Антон отвечал за реализацию рекомендации подписок в приложении на основе пользовательских данных. Мы ждали данные от OP Financial Group, но в итоге они оказались не такими, как мы ожидали — данные были синтетические и в них многого не было, например, переводов от друзей. Но на что мы не могли забить — это на отсутствие транзакций с подписками (Spotify, Tinder и т.п.), без которых анализировать данные было попросту бессмысленно.

Рассказав об этом OP, мы получили одобрение на синтез данных, которых нам не хватало. Простыми словами, мы могли в таблицы с данными внести необходимые для нашей модели транзакции. Для вывода статистики — этого было достаточно, но мы хотели обучать алгоритм на этих данных, и вот тут возник спор между Антоном и Сашей.

Антон предложил забить на синтез данных и зафейкать алгоритм рекомендаций, ибо зачем искать паттерны там, где их сам только и задал, а Саша хотел сделать честную модель рекомендаций, поэтому мы пришли к следующему решению: Саша генерирует данные (вручную), но не говорит Антону какие, а Антон учит модель на этих данных, выявляя паттерны, а на презентации мы показываем как это работает. В итоге всё заработало и модель "научилась" искаться паттерны в транзакциях и определять их как подписки.

Демо-день

Закончили мы в 9 утра, за час до дедлайна залив на сайт Junction всё необходимое: короткий питч, описание проекта, презентация со скринами приложения и видео с демкой, а также ссылка на GitHub.

Поспали часов 5, проснулись около 15:00 и сразу на презентацию.

Сначала мы взяли первое место в категории финансов, а после уже прошли в ТОП-10.

Вместо фотографий сцены — скриншоты трансляции
Вместо фотографий сцены — скриншоты трансляции

Отмечу, что мы и ещё одна команда — единственные, кто занял первое место в категории и прошёл в ТОП-10. Но можно было, например, не выиграть челлендж, но пройти в ТОП-10.

Далее у 10-и команд, что прошли в финал, было 4 минуты, чтобы продемонстрировать своё решение в режиме реального времени.

В списке презентующих мы стояли первыми и сразу задали планку. Саша рассказал всё четко, без заминки, а на дессерт продемонстрировал нашу киллер-фичу с AR.

Live-трансляция
Live-трансляция

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

Вместо фотографии на сцене — winning screenshot
Вместо фотографии на сцене — winning screenshot

После всех презентаций ведущие объявили 10 минут на голосование... Дальше барабанная дробь и наш проект объявляют победителем. Этот момент запомнится надолго, но лично мне не хватило офф-лайна, не хватило выйти на сцену, поднять с тиммейтами здоровый чек на десятку тысяч евро над головой. Но всё равно был драйв и эмоции — всё супер.

Как сказал после презентации Андрей Володин: «Были бы сейчас вместе, пошли бы в бар первый попавшийся и напились бы там», — а так мы собрались ещё раз в праздничный Zoom, поделились эмоциями, обсудили проекты других участников и... пошли отсыпаться.

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

За время хакатона мы очень круто сработались командой, всего за два дня получилось сделать настоящий продукт, поэтому решили дальше развивать идею personal financial advisory и wealth management. Так что ждите blow-mind новостей в ближайшее время, а пока делимся выводами, которые мы сделали за время хакатона.

Какие выводы мы сделали

  • Расставайтесь с идеями легко.

Будьте готовы к тому, чтобы отрезать лишнее — делайте это легко и непринужденно. Количество идей всегда будет превышать ваши ресурсы, поэтому будьте решительны в том, чтобы отказываться от идей, концентрируясь только на самом важном.

  • Тестируйте идеи.

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

  • Делайте по кайфу

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

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

109109
103 комментария

А чем эта AR-штука лучше обычного банковского приложения? Ведь все равно нужно логиниться чтобы узнать баланс и прочее, а тут еще и карту держи определенным образом и камерой все это снимай.
Как проект-прикол может и интересно, но в реале не юзабельно. Мне кажется по такой же причине не взлетели технологии типа google glass.

35
Ответить

На данном этапе это действительно неюзабельно, данная функция была реализована по фану, так сказать привлечь внимание (в середине статьи про это писал)

7
Ответить

как человек участвовавший во многих хакатонах, скажу что все эти вопросы не имеют значения

побеждает чаще всего тот, кто лучше всех бросит пыль в глаза, чтоб был вау эффект, у этих ребят это отлично получилось

6
Ответить

ммм. мне кажется, что гугл гласс чуть раньше пришел, чем нужно
так, в целом, это охрененная штука, которая дороже конечно чем нужно

2
Ответить

Я думаю когда в очки впихнут будет круто! Из оперы, вначале сделаем контент, а потом устройство для воспроизведения! Я жду нормальные очки, с такой фишкой!

Ответить

Прости, Юра, мы всё про..ли... Жалко что такие талантливые ребята тратят время на какую-то детскую ненужную ерунду. Да, возможно это замотивирует человека, воющего от голода и маленькой зп, чтобы наконец войти в айти, но блин, это же капец бессмысленно и беспощадно...

6
Ответить

Полностью согласен. В таком возрасте можно уже было не один заводик ЖБИ открыть под Уфой. А там и до трешки в центре с ку пятой для жены рукой подать!

4
Ответить