S monolita na mikroservise iliti kako što bezbolnije otplatiti tehnički dug stvaran godinama
Foto: Infobip Shift

S monolita na mikroservise iliti kako što bezbolnije otplatiti tehnički dug stvaran godinama

Kako je izgledao prelazak s monolita na mikroservisnu arhitekturu u RBA Hrvatska, što je u tom procesu bilo najteže, kako su "davili" jedan po jedan dio starog koda te zašto vole open-source ispričao nam je Bruno Kovačević, direktor razvoja te banke.

To je kao da mijenjate motor na avionu dok leti i pun je putnika. Ili kao da skačete s jednog jurećeg vlaka na drugi. Tako se obično u tehnološkom svijetu opisuje zahtjevni posao prelaska s monolitne na mikroservisnu arhitekturu.

Ili, u slučaju Raiffeisenbank Hrvatska – kako raskomadati slona, kako je na Infobip Shift konferenciji projekt tehnološke modernizacije opisao Bruno Kovačević, direktor razvoja te banke. Monoliti jesu ogromni i nezgrapni poput slonova, a da slika bude potpunija treba još dodati i da slon to komadanje ni u kojem trenutku ne smije osjetiti te da je krajnji rezultat pretvaranje tih komada u manjeg, boljeg, fleksibilnijeg i modernijeg slona. Nije čudo što na pitanje što je tijekom projekta bilo najizazovnije bez razmišljanja odgovara:

Postići da sve cijelo vrijeme radi i da poslovanje banke i korisnici ne osjete da se išta događa!

Suzdržite se od potrebe da promijenite puno toga odjednom!

I dok su legacy kod i monolit riječi od kojih bi neki u svijetu razvoja softvera najradije pobjegli, pothvati poput prelaska s monolita na mikroservise često ispadnu među najizazovnijima na kojima se u tehnološkoj industriji može raditi.

Na takvim velikim i transformacijskim projektima uvijek svi uključeni puno nauče, od biznis logike, suradnje biznisa i techa, do kopanja po slojevima i slojevima koda, otkrivanja međuovisnosti i najboljeg načina kako što bezbolnije otplatiti tehnički dug stvaran godinama.

Ne može se samo staru platformu ugasiti i prijeći na novu. Odnosno, legacy koda se ne može riješiti preko noći, potrebna je promišljena strategija. Posebno kad se sve događa u vrlo reguliranoj industriji u kojoj nema prostora za greške. Suzdržite se od potrebe za big bangom, odnosno da promijenite puno toga odjednom!

Foto: Infobip Shift

U RBA su se odlučili za provjerenu strategiju strangler patterna postepene modernizacije – jedna po jedna aplikacija ili funkcionalnost se razvijaju na novoj platformi pa spajaju s ostatkom monolita. Kad moderna verzija profunkcionira, stari kod odgovoran za tu aplikaciju se “udavi” i tako sve dok se monolit potpuno ne raskomada.

“Davljenje” stare da bi došla nova tehnologija je izazovno, ali ima nekolicinu benefita

Ni taj pristup nije bez svojih izazova i Kovačević priznaje da je teško procijeniti koliko će proces modernizacije ukupno trajati, međutim siguran je da je to pravi put:

Prva verzija platforme ugledala je svjetlo dana nakon samo tri mjeseca, istina s dosta tehničkog duga, ali kao odličan temelj za pripremu prvog poslovnog slučaja kako bi se prikazali svi benefiti. Na istom okruženju napravljena je mobilna aplikacija u roku od godinu dana. Tijekom tog razvoja izgrađeni su servisi koji su iskoristivi za ostale digitalne kanale, a i druge produkte banke.

Iako i on kaže da mikroservisi nisu čarobni štapić i ne rješavaju sve tehnološke izazove jedne banke, dobrobiti prelaska itekako osjećaju:

U enterprise okruženjima obično je bolna točka brzina odgovora na promjene.

Segmentiranjem na manje cjeline prema domenama smo višestruko ubrzali isporuke. Lagano skaliranje servisa, visoka dostupnost, ponovna iskoristivost, kontinuirana integracija, opisivanje infrastrukture kodom, automatizirana testiranja samo su neke od prednosti koje su nam donijele nove tehnologije i metodologije u razvoju. Brži smo i agilniji, brže razvijamo i testiramo nove stvari.

I, ne najmanje važno, lakše nam je pronaći nove ljude jer bilo je izazovno nalaziti one koji su htjeli raditi s legacy kodom.

Udaranje temelja za sve što dolazi poslije

Usporedno s tehnološkom transformacijom, u RBA su se mijenjali i organizacijski te prelazili na nove, agilne načine rada. U slučaju prelaska s monolita na mikroservise spojili su timove koji rade na legacy kodu s onima koji rade na mikroservisima tako da rade svi zajedno.

Promjena kulture također je jedan od ključnih sastojaka bitnih za uspjeh digitalne transformacije velikih sustava kao što je jedna banka. Kovačević se slaže:

Digitalna transformacija ne može sama sebi biti cilj. Prelazak na najnovije tehnologije ne znači ništa ako, prije svega, ne donosi poslovnu vrijednosti i ako ne znači i promjenu kulture.

Modernizacija obično i kreće od nekog poslovnog slučaja, a za njih je izgradnja platforme za mikroservise bio samo početak i “udaranje temelja” za sve što dolazi poslije. S obzirom na trenutni smjer digitalizacije banaka, fokus je na digitalnim proizvodima i kanalima.

Banka, pa open-source!

Tijekom transformacije Raiffeisen banka odlučila se, vrlo neobično za jednu banku, svoj tech stack zasnivati na open-source tehnologijama.

Tehnološki stack mikroservisa RBA Hrvatska temelji se na OpenShift platformi za upravljanje Docker kontejnerima, ELK stacku, Javi 11 na Spring frameworku, Kafki, PostgreSQLu, Gitlabu i Jenkinsu.

Svi se iznenade kad saznaju da smo banka koja voli open-source. Velika prednost je što nismo ovisni o jednom vendoru, nego smo fleksibilni izabrati onu tehnologiju koja nam se čini kao pravi alat za određeni set problema.

Umjesto ulaganja u skupa komercijalna rješenja odlučili smo se na ulaganje u ljude, dizanje razine znanja i korištenje naprednih obrazaca arhitekture. Nema smisla imati najskuplji tech stack, ako nemaš ljude koji ne znaju što bi s njime!

Ako već imate iskustva sa spomenutim tech stackom, zanima vas kako je to raditi na velikim bankarskim sustavima – trk na njihove stranice karijera, imaju više od 10 otvorenih pozicija!

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome)
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime (Hrvoje Lončar) ili barem ime i inicijala (Hrvoje L.) te pravu email adresu. Kako koristimo podatke koje tamo ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Startupi i poslovanje

Dvije strane Porscheovog ulaganja u Greyp: Mali ulagači ljuti i nezadovoljni dok se Neufund hvali povijesnim exitom

Iza najave da Porsche preuzima većinski udio u Greyp Bikes krije se priča malih ulagača koji su 2019. u Greyp uložili kroz Equity Token Offering i sad se osjećaju - izigrano i izgurano.

Društvene mreže

Stiže Huuk. Nova globalna društvena mreža iz Rijeke?

Gradski autobus veselih boja s pitanjem "What the Huuk are we doing tonight" koji u zadnje vrijeme vozi Rijekom i obećanje da ćete od danas, 1. prosinca moći "Proširiti svoje pleme" najavili su lansiranje nove aplikacije u tom gradu. Kakve točno saznali smo u razgovoru sa suosnivačem Mateom Starčevićem Filipovićem.

Novost

Developeri, recite što doista želite: šareni ured, pivo petkom, veliku plaću, dobrog šefa….

Traženi, maženi, paženi i razmaženi. Tako mediji i društvo u zadnje vrijeme doživljavaju developere. Zagrebačka IT tvrtka odlučila je provjeriti jesu li doista takvi te pitati developere što oni doista žele.

Što ste propustili

Intervju

Prošle godine bila je team lead, danas je sa svojih 30 godina direktorica dizajna proizvoda u Bornfightu

Elenu Crnković ste imali priliku upoznati kad je sudjelovala na panelu Ladies of New Business: Dame od UX-a. Trideset joj je godina, iza sebe ima deset godina iskustva u dizajnu i odnedavno se može pohvaliti iznimno odgovornom ulogom - onom direktorice dizajna proizvoda u Bornfightu. S Elenom smo popričali o tome kako je završila u svijetu UX-a i dizajna te što znači doći tako mlada na čelo odjela u galopirajućoj agenciji.

Startupi i poslovanje

CircuitMess prikupio više od 2.500.000 kuna za “uradi-sam” Batmobile

CircuitMess, hrvatski startup koji dizajnira DIY proizvode za STEM edukaciju priveo je kraju svoju četvrtu i najambicioznu kampanju do sada.

Intervju

The Missing Semester: Knjiga koja će vas o poslu softverskog inženjera naučiti ono što fakultet nije

Iako ga od diplome na FER-u dijeli još jedna godina studija, Jurica Kenda ima već dvije godine radnog iskustva u poznatim domaćim developerskim tvrtkama, a trenutno radi u Irskoj u Amazon Web Services. Dojmove, zapažanja i lekcije koje je o poslu softverskog inženjera naučio tek u praksi, na radnom mjestu, skupio je u knjigu koju je samostalno izdao.

Društvene mreže

Hrvatski Huuk: Ima li smisla pokrenuti društvenu mrežu u 2021.?

Vine, Beme, Ello, Clubhouse, Snapchat? Dalo bi se raspravljati o svim tim primjerima i zašto nisu dosegli slavu Facebooka, Instagrama i TikToka. Danas na primjeru hrvatske aplikacije Huuk radimo upravo to - analiziramo bi li jedna društvena mreža iz Hrvatske mogla zaživjeti na globalnoj razini.

Intervju

Combis o fleksibilnom radu: Povjerenje koje smo dali zaposlenicima nam se višestruko vratilo

Fleksibilnost i povjerenje bili su ključni za ovu hrvatsku ICT tvrtku kako bi bezbolno prešla na trajni hibridni način rada. Goran Car, CEO Combisa, otkriva kako su postigli da sve funkcionira iako 400 zaposlenika ima slobodu organizirati si radno vrijeme.

Kultura 2.0

30 godina od prvog SMS-a: 6 stvari koji su obilježile način kako komuniciramo putem poruka

SMS je zagazio u svoju 30. godinu i kako nam se čini, neće još tako lako izumrijeti. Osim toga, svaki danom nas iznenađuju novi načini komuniciranja putem poruka. Tehnologija je divna, ali što je s korisnicma koji su ključni u definiranju "kulture dopisivanja". Postoji li "online bonton"?