Разделы

ИТ в банках

Стресс и хаос как факторы роста. Разработчики прокачали свои навыки на онлайн-хакатоне Открытие.Digital

Банк «Открытие» провел онлайн-хакатон OpenSpaceHack для разработчиков, дизайнеров и продакт-менеджеров. 545 участников из 32 городов России подали заявки на участие, в надежде выиграть главный приз — ₽600 тыс. За три дня участники хакатона, прошедшие отбор, разработали 37 решений.

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

Не было никаких ограничений по решению задач, но они были по стеку языков программирования. Например, Python можно было использовать только для реализации моделей машинного обучения. Банку было интересно получить в результате решение, которое в дальнейшем можно будет доделать и использовать в своей экосистеме: «Мы выбрали именно тот стек, по которому в «Открытии» большая собственная экспертиза».

Чтобы этот момент не стал непреодолимым для тех разработчиков, кто владеет другими языками программирования, было введено еще одно правило: участники должны привести свою команду или объединиться на месте, поискав соратников среди тех, кто уже разместил анкеты на сайте OpenSpaceHack. Но были и отчаянные — те, кто готов выучить язык за неделю до мероприятия.

«Этот хакатон позволил мне выйти на новый уровень. Я привык писать приложения на Python, но стек выглядел иначе. Пришлось учить новый язык, разбираться в незнакомых технологиях, а затем применять их на практике. Опыт огромный, без хакатона я бы не пришел к нему так быстро. Уверен, что новые знания пригодятся мне в будущем, при устройстве на работу», — рассказал Степан Денисов. Спойлер: именно его команда вырвалась в финалисты, поэтому с уверенностью можно сказать: будущее наступило быстрее, чем надеялся разработчик.

Банк «Открытие» провел онлайн-хакатон OpenSpaceHack для разработчиков, дизайнеров и продакт-менеджеров

Наиболее важными критериями для членов жюри был хорошо написанный код и рабочая версия прототипа. Оценка технической реализации проекта составляла 70% от общей. По правилам в командах было от 3 до 5 человек, при этом только разработчиками они не ограничивались: в составы входили дизайнеры и продакт-менеджеры. При разработке продуктов и питчинге они тоже играли важную роль. Жюри особо отметило, что отдельные решения просто поразили их степенью проработки и видением конечного продукта целиком. Понадобились и навыки дизайна: на защите команды представляли презентацию проекта и само решение. Юзабилити и приятный интерфейс расценивались как забота о конечном пользователе и прибавляли очков.

Распределение ролей и личная ответственность каждого в команде помогла дойти до победы далеко не всем. Одна из команд, несколько дней трудившаяся над баг-трекером и придумавшая интересную концепцию, в последнюю ночь все-таки осталась без пользовательского интерфейса. Человек, отвечавший за фронт-энд, «угнал React за 60 секунд, зато классно пишет на AngularJS», как выразился неунывающий капитан.

40 часов давалось на то, чтобы разработать решение, которое можно представить на питчинге. Многим пришлось не спать — иначе не успеть в срок. 15 тыс. строчек кода, 75 коммитов, 6 литров энергетика и 4 пиццы на пятерых — так описала свой опыт команда Young Meters.

В результате призовой фонд разделили между собой три победивших — каждая в своем треке — команды: «Артем пригласил», PPnP.me и «Багстер».

Золотые решения

«Ты получаешь и опыт взаимодействия в команде, и работу в стрессовых ситуациях. Еще нужно было обратить серьезное внимание на спич, нам же требовалось хорошо представить свое решение. Таким образом, прокачали еще один навык. Что касается технической части, то тут учиться было уже некогда, применяли то, что знаем, и быстро», — рассказал о своих впечатлениях Артем Юрин, капитан команды «Артем пригласил». Эта команда работала над системой мгновенного ответа на вопросы. Сфокусироваться решили на главном: созданная нейросетевая модель должна понимать семантику запроса независимо от того, какие синонимы использует юзер, как он строит предложение и какие орфографические ошибки допускает. Новые документы в базу знаний добавляются «на лету», без перезапуска всей системы. Приложение масштабируется, Rest API позволяет интегрироваться с любыми веб-приложениями.

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

Их решение — геймифицированный баг-трекер — взяло самое лучшее из двух миров: мира игр и мира трекеров. От скучных todo-листов и постановщиков задач отказались. Увлечь пользователя должны были социальные и RPG-механики, а помочь с основной задачей баг-репортов были призваны шаблоны, удобная навигация и понятный минималистичный интерфейс. «Формат мероприятия: сжатые временные рамки, часто непривычные условия по технологическому стеку — не дал шанса остаться в зоне комфорта в процессе разработки, поэтому для нас это была попытка задать для себя новую планку, прыгнуть выше головы. Конечно, можно использовать четко отработанные решения и пайплайны, но мы стараемся избегать этого и каждый раз пробовать что-то новое в контексте используемых технологий», — описал ощущения команды Александр Воронков из «Багстера». По его мнению, хакатоны — всегда большой стресс и хаос, в котором нужно уследить за всем: чтобы каждый участник команды выполнял нужные задачи, чтобы никто не простаивал или, наоборот, не выполнял двойную работу. Прокачка софт-скиллов тут неизбежна, даже если технические навыки растить уже некогда.

Команда PPnP.me представила прототип системы распознавания показаний счетчиков по фото, использующий компьютерное зрение в сочетании с Data Science и геймификацией. Предложенное решение при успешном развитии поможет пользователям дистанционных банковских каналов легко и быстро оплачивать счета за воду и электричество, не тратя усилия на ввод показаний вручную, а также научит их разумному потреблению и экономии.

«Мы верим в этот проект. Изначально выбирали трек, работа в котором будет актуальна. Пообщавшись с друзьями и родственниками, убедились, что в случае с коммунальными счетчиками проблема, действительно, есть, — рассказывает бэкенд-разработчик Степан Денисов из PPnP.me. — Наше решение будет полезно людям, и, как следствие, может стать успешным».

Не в деньгах счастье

Денежный приз и сувениры всем участникам хакатона — приятная, но все же не главная вещь, ради чего стоило провести несколько ночей без сна. «Меня заинтересовала задача по разработке вопросно-ответной системы. Это хорошая возможность прокачаться в решении продвинутой ML-задачи на реальных данных», — сказал Амир Утеуов, участник команды GBU, которая делала чат-бот.

«Нам понравился кейс про «крауд-тестинговую систему». Давно хотели сделать такую и уже есть много идей по теме, — поделился разработчик баг-трекера Владимир Рабчанов, Mountain Heads. — Наша команда планирует сделать рабочий прототип, и после хакатона мы обязательно доведем его до продакшена».

Банк «Открытие» также рассматривает возможность заключить дальнейший контракт с одной из команд и предложить работу ряду проявивших себя на хакатоне участникам. «Сейчас это обсуждается», — сообщили в пресс-службе компании.

Наталья Николаева