Justice Team FinTech Project: Бонусная программа банка
Заказчиком данного проекта был крупный банк, осуществляющий деятельность в большинстве стран СНГ, а также государствах Западной Европы, Азии и Африки. Для меня работа над таким проектом - это большая ответственность, так как проект являлся очень серьезным.
Задачей, которая стояла передо мной и командой, являлось добавление нового функционала, чему я был очень рад, ведь «строить» что-то с нуля намного интересней, чем дорабатывать/исправлять готовый функционал. Нашей задачей было создать веб-приложение для новой бонусной программы банка, которое включало в себя подключение платформы бонусных транзакций.
Технологии, с которыми я столкнулся при работе с данным проектом: React, TypeScript и Reatom. Поскольку я работаю с React и TypeScript, для меня они не являлись никакой проблемой, чего нельзя сказать про Reatom, с которым я никогда не сталкивался, так как это относительно новая технология для менеджмента состояний веб-приложения, позиционируемая как альтернатива знаменитому и часто используемому Redux.
Но даже отсутствие опыта с Reatom меня не пугало, потому что у меня появился отличный шанс начать изучать его. Ведь уважающий себя разработчик, даже если он уже очень опытный, всегда должен стремиться совершенствоваться и изучать что-то новое, так сказать «идти в ногу со временем». Изучение новой для меня технологии происходило успешно, потребовалось пару вечеров над статьями/документацией/видео, чтобы ознакомиться с основами, а дальше, уже при работе на проекте, я закреплял полученные знания на практике. Также в освоении мне помогала опытная команда, к которой я всегда мог обратиться за помощью.
Немного о том, как проходил рабочий процесс. В этом плане ничего необычного, каждый день с утра у нас проводился митинг (так называемый stand up), где мы обсуждали следующее: чем занимался вчера, чем будешь заниматься сегодня, а также проблемы, которые тебя блокируют с выполнением задач. Главная цель в ежедневном митинге – отследить, смогут ли быть выполнены командой все итерации, либо как можно раньше выявить причины, по которым они не могут быть выполнены. Далее каждый приступал к своим задачам.
Кстати, с командой очень повезло, у нас отлично наладилась коммуникация, и мы часто созванивались и обсуждали проблемы вместе, что шло на пользу общему делу - проекту, так как решая проблемы вместе, можно гораздо быстрее прийти к положительному результату, нежели сидеть в одиночку.
Возникали ли ещё трудности? Конечно, без них не может обойтись любая сложная и ответственная работа. Несмотря на то, что на проекте были хорошо построены и описаны все бизнес-процессы, техническое задание, были проблемы при объединении кода с другой командой разработчиков. Данный факт потребовал больше времени, чем ожидалось, и в свою очередь влиял на сроки выполнения. Конечно, все исходы событий предвидеть невозможно, поэтому иногда приходилось перерабатывать, но это, скорее, было личное желание. Мы хотели предоставить готовый продукт вовремя, и по итогу выдохнуть с облегчением и сказать: «мы (команда) смогли, мы сделали» - один из лучших моментов, который безусловно вдохновляет.
В заключении хочу сказать, что я рад, что работал на этом проекте, я узнал и частично изучил новую технологию (частично, потому что знать всё невозможно), я общался с крутой командой, из-за чего также получал новые знания, плюсом ко всему - это полученный профессиональный опыт и в целом опыт работы на крупном проекте.