CDOArchitektura IT

Cyfrowa droga do doskonałości, czyli jak zbudowaliśmy GOonline

Jak sprawić, aby Bank BNP Paribas stał się jeszcze bardziej rozpoznawalnym graczem bankowości w Polsce pod kątem rozwiązań zdalnych i kanałów Digital? Jak poprowadzić projekt w oparciu o postulaty Agile w dużej organizacji, powstałej z połączenia kilku mniejszych banków? Jak wymienić wszystkie aplikacje obsługujące zdalnie klientów detalicznych w trakcie łączenia systemów bankowych? Te podstawowe pytania – oraz wiele innych – zadawałem sobie na początku i w trakcie trwania projektu wdrożenia GOonline – aplikacji web oraz platformy Digital obsługującej klientów detalicznych banku.

Cyfrowa droga do doskonałości, czyli jak zbudowaliśmy GOonline

Rynek bankowości w Polsce należy do najbardziej konkurencyjnych w Europie pod względem innowacyjności i wykorzystywanych technologii. W sektorze działa duża liczba podmiotów i nikt nie zajmuje pozycji monopolisty. Większość z czołowych firm podjęła działania nastawione na transformację organizacyjną i technologiczną. To przekłada się na wysoki poziom w zakresie oferowanych usług (np. usługi płatnicze – BLIK, płatności zbliżeniowe) oraz oferty produktów bankowych wspartych doskonałymi, prostymi procesami sprzedaży z wykorzystaniem kanałów zdalnych. Branża korzysta z najlepszych praktyk projektowania przyjaznego User Experience oraz nowoczesnych standardów i technologii. Aplikacje mobilne i web charakteryzują się dużą dostępnością, wydajnością i przyjaznym interfejsem.

Bank BNP Paribas na fali dynamicznego wzrostu

Bank BNP Paribas jest obecnie 6. co do wielkości bankiem pod względem wielkości aktywów. Fuzje, w wyniku których powstał dzisiejszy Bank BNP Paribas, doprowadziły do znacznego wzrostu organizacyjnego, ale też przyniosły nowe wyzwania. Większość z zespołów składa się z osób wywodzących się z różnych kultur organizacyjnych i posiadających różne przyzwyczajenia, z którymi trzeba było się zmierzyć.

Skupienie się na priorytetach związanych z łączeniem organizacji i systemów bankowych miało wpływ na zdezaktualizowanie technologii i narzędzi bankowości internetowej. Kilkanaście aktualizacji aplikacji w roku,  osiem godzin niedostępności miesięcznie wynikających z prac planowanych oraz awarii, 1,5 miesiąca czasu potrzebnego na dostarczenie nowej funkcjonalności do klientów to tylko niektóre ze wskaźników oddających wyzwania sytuacji, w której znajdował się bank, kiedy stanąłem przed zadaniem poprowadzenia projektu wdrożenia GOonline. Nowej aplikacji, która miała spełniać funkcję interfejsu bankowości internetowej oraz świadczyć logikę biznesowej i udostępniać dane dla wszystkich kanałów zdalnych klienta detalicznego.

Do codziennej pracy wybraliśmy framework Scrum wsparty mechanizmami skalowania Nexus. Zapewniliśmy dołączenie do Zespołów Product Ownerów, którzy na bieżąco wspierają tworzenie koncepcji i odbierają gotowy produkt. Wszystkie narzędzia wspierające proces wytwarzania i dostarczania oprogramowania do Klientów (Continuous Integration / Continuous Delivery) oraz monitoring zostały od stworzone podstaw przez zespół. Dzięki temu, przejęcie kwestii własności nad produktem i poczucie odpowiedzialności było naturalnym i nieodłącznym elementem naszej pracy. Takie podejście zapewniło nam odpowiednią elastyczność w sytuacji, gdy później musieliśmy łączyć zadania wynikające z wdrożenia GOonline z uczestniczeniem w migracji klientów banku Raiffeisen.

Celem było zapewnienie klientom nowoczesnego, zaawansowanego technologicznie, wygodnego, intuicyjnego i szybkiego narzędzia, a tym samym podkreślenie   roli i miejsca Banku BNP Paribas na mapie działających w kraju instytucji finansowych dostarczających nowoczesne rozwiązania Digital. Dodatkowym utrudnieniem dla tego przedsięwzięcia był zbliżający się projekt łączenia systemów bankowych po fuzji.

Zmiany sposobu pracy i kultury

Pierwszym krokiem było przygotowanie odpowiedniej struktury organizacyjnej i wybór metodyki pracy. Było dla mnie jasne, iż musimy podążyć za trendami i zapewnić zwinne metody pracy (Agile) oraz skupić w jednym miejscu wszystkie kompetencje rozwojowe i utrzymaniowe DevOps. W celu zapewnienia niezależności oraz warunków do kształtowania nowych postaw postawiliśmy na podejście z wydzielonym Scrum Studio, w którego skład weszły osoby w całości dedykowane do tego przedsięwzięcia i reprezentujące niezbędne kompetencje: projektanci UX, graficy, analitycy biznesowi i techniczni, architekci, developerzy, testerzy, osoby odpowiedzialne za operacje na produkcji i monitoring. Dzięki temu mogliśmy zachęcić i stymulować samodzielność oraz samoorganizację. Wszystkie potrzebne narzędzia i umiejętności były na miejscu.

Do codziennej pracy wybraliśmy framework Scrum wsparty mechanizmami skalowania Nexus. Zapewniliśmy dołączenie do Zespołów Product Ownerów, którzy na bieżąco wspierają tworzenie koncepcji i odbierają gotowy produkt. Wszystkie narzędzia wspierające proces wytwarzania i dostarczania oprogramowania do klientów (Continuous Integration / Continuous Delivery) oraz monitoring zostały stworzone od podstaw przez zespół. Dzięki temu, przejęcie właścicielstwa nad produktem i poczucie odpowiedzialności było naturalnym i nieodłącznym elementem naszej pracy. Takie podejście – do pracy i kultury funkcjonującej w zespole – zapewniło nam odpowiednią elastyczność w sytuacji, gdy później musieliśmy łączyć zadania wynikające z wdrożenia GOonline z jednoczesną migracją klientów z wcześniej działających systemów bankowych na nowy.

Technologie oparte o mikroserwisy i doskonałe procesy

W efekcie prac zespołu powstała aplikacja GOonline, będąca platformą składającą się z ponad 60 mikroserwisów i obsługującą ponad 1 mln aktywnych użytkowników. Ważnym elementem rozwiązania stały się narzędzia wspierające jej funkcjonowanie i dostarczanie aplikacji do klientów oraz ich monitorowanie. Jako platformę do uruchomienia środowiska mikroserwisowego wykorzystujemy Open Shift. Zapewnia nam ona pełną skalowalność oraz automatyzację procesówy utworzenia i odzyskania kontenerów.

W efekcie prac powstała aplikacja GOonline, będąca platformą składającą się z ponad 60 mikroserwisów i obsługującą ponad 1 mln aktywnych użytkowników. Jako platformę uruchomieniową środowiska mikroserwisowego wykorzystujemy Open Shift. Zapewnia nam ona pełną skalowalność oraz automatyzujący procesy utworzenia i odzyskania kontenerów. Do obsługi procesu tworzenia środowisk aplikacji wykorzystujemy nam Jenkins, który uruchamia skrypty Ansible lub Liqidbase (baza danych). Z kolei w celu kontroli wersji wystandaryzowanego repozytorium służą nam BitBucket oraz Nexus. Bezpieczeństwo zapewniamy skanując kod i repozytoria z wykorzystaniem SonarQube i Nexus IQ. W każdym procesie instalacji aplikacji wywoływane są testy integracyjne napisane przy użyciu Jmetera oraz testy GUI przygotowane w Selenium. Dzięki temu deweloperzy dostają niezwłocznie informację zwrotną odnośnie jakości przygotowanego kodu.

Do obsługi  procesu tworzenia środowisk aplikacji wykorzystujemy Jenkins, który uruchamia skrypty Ansible lub Liqidbase (baza danych). Z kolei w celu kontroli wersji wystandaryzowanego repozytorium służą nam BitBucket oraz Nexus. Bezpieczeństwo zapewniamy skanując kod i repozytoria z wykorzystaniem SonarQube i Nexus IQ. W każdym procesie instalacji aplikacji wywoływane są testy integracyjne napisane przy użyciu Jmetera oraz testy GUI przygotowane w Selenium. Dzięki temu deweloperzy dostają niezwłocznie informację zwrotną o jakości przygotowanego kodu. Monitoring rozwiązania stworzyliśmy w oparciu o stack ELK, natomiast warstwę wizualizacji zapewnia Grafana. Całość składa się na w pełni zautomatyzowany, wystandaryzowany i bezpieczny proces dostarczania aplikacji do klientów. Nie występuje w nim żadna czynność ręczna, a pełne środowisko GOonline jesteśmy w stanie stworzyć w niecałe 40 minut.

Korzyści biznesowe nowego podejścia

Takie podejście do technologii, architektury oraz automatyzacji procesów umożliwiło nam dostosowanie się do potrzeb Product Ownerów w zakresie częstotliwości i elastyczności dostarczania zmian. Skróciliśmy sześciokrotnie nasz Lead Time i pięciokrotnie zwiększyliśmy częstotliwość wdrożeń w stosunku do wartości sprzed rozpoczęcia prac. GOonline udowodnił jakość i stabilność przyjmując największy ruch klientów w dniu połączenia operacyjnego Banku BNP Paribas i Raiffeisen Bank Polska, zaledwie miesiąc po pierwszym uruchomieniu produkcyjnym. Nową jakość funkcjonalną i techniczną dostrzegli zarówno klienci (przyrost użytkowników kanałów GOonline wyniósł 80 proc. w 12.2020 r. vs 12.2019 r.), jak i jurorzy takich konkursów, jak Złoty Bankier (drugie miejsce w kategorii wygody użytkownika) oraz dziennikarze Newsweek Polska (drugie miejsce w kategorii bankowość zdalna).

Wprowadzamy zmiany bez niedostępności

Najnowsze technologie, automatyzacja oraz kwestie właścicieli stosowanych narzędzi pozwoliło nam wykonać kolejny krok, rewolucyjny na rynku bankowości w Polsce. Wszystkie zmiany i wdrożenia realizujemy bez niedostępności aplikacji GOonline. Jest to możliwe dzięki architekturze mikroserwisowej, modelowi blue-green deploymenu oraz strukturze dostępu do aplikacji pozwalającej podejrzeć jej funkcjonowanie, zanim tę możliwość uzyskają Klienci. Jest to bardzo bezpieczny i stabilny proces, który niejednokrotnie wykonujemy w trakcie dnia roboczego, czyli w czasie największej aktywności użytkowników. Takie podejście również przełożyło się na uznanie ekspertów wyrażone wyróżnieniem w kategorii dostępność w konkursie Złoty Bankier (trzecie miejsce – najwyższe wśród top sześciu banków w Polsce).

Wdrożenie GOonline było fascynującą przygodą w kilku wymiarach. Przedefiniowaliśmy podejście banku w zakresie stosowanych metodyk pracy oraz kultury organizacyjnej. Eksperymentalnie wdrożyliśmy najnowsze technologie i udowodniliśmy ich jakość oraz stabilność w praktyce. Dzięki temu otrzymaliśmy potwierdzenie skuteczności pracy w metodykach zwinnych i zachęciliśmy inne obszary do stosowania podejścia Agile. Z punktu widzenia całej organizacji był to przełomowy krok w kierunku transformacji, natomiast Klienci zobaczyli instytucję stawiającą na ich jeszcze większą wygodę i jakość w obszarze digital.

Michał Choiński, Head of IT Digital Channels Department, BNP Paribas Bank Polska

Artykuł ukazał się na łamach Magazynu ITwiz nr. 1/2021. Zamów poniżej:

Magazyn ITwiz 1/2021

Tagi

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *