Любой хакатон — мероприятие сугубо практическое. На ВТБ More.Tech мы хотели посмотреть, как молодые таланты подойдут к решению поставленных нами задач. Онлайн-формат позволил привлечь почти 500 IT-специалистов, около 30% из которых подключились из регионов. Нужно сказать, что уровень команд, готовность и зрелость решений приятно удивили жюри. О результатах хакатона и особенностях банковской разработки рассказываем под катом.
Онлайн-хакатон ВТБ More.Tech состоялся осенью. В течение четырёх дней занимались кодингом, проводили митапы с экспертами ВТБ по методологиям, кейсам и практике DevOps и Agile, мобильной и web-разработке, мастер-класс по подготовке презентаций и карьерный коучинг с разбором резюме и пробными интервью.
Хакатон состоял из двух треков. Первый был предназначен для специалистов в web-разработке, второй — для разработчиков под iOS/Android. Команды соревновались в создании антифрод-системы для банковских web-приложений и разработке мобильного приложения для распознавания автомобилей по фото и подачи кредитной заявки на выбранные машины. На разработку команды потратили в среднем 75 часов.
На митапах мы рассказали, как устроена разработка внутри ВТБ. В IT-блок мы ежемесячно набираем в среднем более 100 профессионалов. И этот темп не снижается даже сейчас, во время пандемии. Мы хотим видеть талантливую молодежь среди своих сотрудников.
«В том огне, водовороте изменений, который у нас запустился, на текущий момент участвуют 14 000 айтишников, из которых порядка 5000 — сотрудники ВТБ. Это большой многовендорный коллектив, в котором 14 000 человек каждый день создают банк будущего. Через хакатон можно увидеть поближе, как этот вихрь движется. Мы будем рады принять вас в эту семью, где ваши идеи нужно будет срочно встраивать и развивать», — так обрисовал ситуацию заместитель президента ВТБ Вадим Кулик.
Коридор возможностей для разработчиков в банке
О том, как у нас всё устроено и чем приходится заниматься веб-разработчикам, мы рассказали на митапе «Свобода выбора развития».
Мы перешли на небольшие продуктовые команды по 10–12 человек и частые релизы. Быстрый выпуск инкрементов позволяет оперативно получить отзывы пользователей и выстроить видение последующего развития. Команды в банке во многом автономны, но, в отличие от стартапов, у них есть множество окружающих коммитов.
Для разработчиков, приходящих из стартапов, оказывается сюрпризом существование корпоративной архитектуры. При создании большой системы важно не дать расползтись её модулям и обеспечить взаимодействие между ними. Корпоративная архитектура не касается при этом непосредственно разработки. Она не про то, как проектировать объектную модель приложения и какие фреймворки использовать. Она задаёт общий контур, общие термины.
Термины играют важную роль даже в маленькой команде: попробуйте дойти куда-то, если не договориться, где лево, а где право. Для межкомандных терминов мы ввели понятие контракта. И стремимся проектировать термины таким образом, чтобы их изменение внутри команды не затрагивало высокоуровневый контракт.
Чем мы конкретно занимаемся? В микросервисной архитектуре каждый сервис представлен в виде отдельного приложения, а пользовательский интерфейс остаётся монолитным — и это проблема. Мы поделили фронтенд на бизнес-функции. Каждое микроприложение имеет ту же структуру, что и прежнее монолитное. Их UI объединяются в одном связующем слое, склейке, с которой и взаимодействует пользователь.
Вся эта история называется микрофронтендом. И здесь возникает множество задач: согласование поведения компонентов UI, корректная маршрутизация по разным путям, рендеринг на стороне сервера, глобальное хранилище данных для всех микроприложений. Вот над этим нам и предстоит работать в течение ближайшего года.
Я б в тимлиды пошёл, пусть меня научат
Какие навыки, наборы инструментов, языки программирования необходимо освоить, чтобы развиваться как разработчик фронтенда/бэкенда, тимлид, архитектор? Об этом мы рассказали на митапе для разработчиков мобильных приложений «Нативная vs кросс-платформенная разработка: что выберете вы для своего проекта?».
Молодые команды часто предпочитают кросс-платформенную разработку. Это позволяет экономить ресурсы и быстрее проверить бизнес-идею. Наш хакатон — хороший тому пример. Ребята активно использовали OpenAPI и кросс-платформенную разработку. Такой подход позволяет быстро создать приложение и получить доступ к многотысячной аудитории банка. Здесь очевидна польза и для банка с точки зрения лидогенерации.
У себя в банке мы пока не видим применения для кросс-платформенных решений. Нативные решения лучше проработаны и более предсказуемы в отношении масштабируемости и безопасности. Но в разработке, особенно мобильной, всё быстро меняется, поэтому важно следить за новинками. Если разработчик хочет оставаться на острие профессии, ему необходимо смотреть как в сторону кросс-платформ, так и в сторону нативки.
Для расширения кругозора лучше изучать языки программирования разной направленности. Тем, кто занимается мобильной разработкой и пишет на Java, полезно будет изучить язык для бэкенда. Но один язык должен быть приоритетным: в чём-то необходимо быть специалистом, а по остальным прокачивать навыки.
При работе в команде необходимы навыки общения. Софт-скилы как работа с ожиданиями и возражениями особенно важны, если ты планируешь расти и становиться лидом в разработке.
Для каждого разработчика мы выстраиваем индивидуальный план развития и даём задачи в соответствии с его потенциалом, чтобы люди постоянно росли.
900 тыс. рублей призового фонда достаются…
До финала дошли 34 команды в треке Web и 30 команд в треке Mobile. В каждом треке был суперфинал, где мы повторно рассматривали решения каждого из претендентов на главный приз. Победители получили по 250 тыс. руб., а общий призовой фонд составил 900 тыс. руб.
В треке Web победителем стала команда SFT из Москвы. Помимо качественной технической реализации, ребята лучше всех смогли продать своё решение. Второе место заняла команда Easy из Санкт-Петербурга. Они уступили победителям лишь по одному критерию. Третье место у команды Good Game — Well Played из Москвы. В своём решении ребята применили интересную идею: как распознать человека по тому, как он работает с мышкой.
В mobile-треке первое место завоевала команда RxProject из Москвы. Ребята были призёрами хакатона в прошлом году, а в этом стали победителями. Жюри отметило классный дизайн и поддержку функции виртуальной реальности. Второе место у команды APG из Москвы. Их приложение работает на обеих платформах и имеет нативный и простой интерфейс. Третье место у NaN из Москвы. Ребята проделали огромную работу по оценке пути клиента и реализации серьёзной рекомендательной системы.
«Четыре дня вместо двух, как в офлайн-формате, кодить весьма напряжённо. Но разработка не так тяжело далась, как ожидание результатов. Конкуренция была очень плотной, поэтому для победы надо было выделиться и пришлось включить весь свой креатив: помимо буквальной технической реализации, требовалось добавить что-то ещё сверх того, что написано в постановке задачи», — отметили ребята из RxProject.
Все участники проделали огромную работу. Тех, кому в этот раз не удалось поучаствовать, мы ждём на хакатоне в следующем году. До встречи на ВТБ More.Tech 2021.
Tatikoma
Штат ВТБ выглядит слегка раздутым.
Один человек может создать клёвую игру.
Пара человек может создать Apple или Google.
14000 айтишников могут делать мобильное приложение ВТБ (и никогда не доделать — нет предела совершенству).
Не понимаю в какой момент стало модным выставлять кол-во айтишников напоказ. Выглядит не эстетично.