KlientasINVL
SektoriusFinansinės paslaugos / Turto valdymas
RegionasLietuva
Atlikti darbaiUI/UX dizainas, savitarnos sistemų ir mikroservisų architektūros vystymas
Iššūkiai
Vienas didžiausių pradinių iššūkių buvo paveldo (Legacy) kodo bazės modernizavimas ir migracija į atvirojo kodo sprendimus. Darbai turėjo būti atlikti laikantis itin griežto grafiko bei aukštų „Fintech“ sektoriaus reguliavimo standartų.Siekdami sklandaus perėmimo, glaudžiai bendradarbiavome su ankstesniu paslaugų teikėju, užtikrindami struktūrizuotą žinių perdavimą. Iš mūsų pusės buvo paskirtas produkto savininkas (Product Owner) ir įdiegti „Agile“ principai, leidę efektyviai valdyti projekto apimtį bei tempą.
- Kompleksinė kodo bazė su pasenusiomis technologijomis
- Neefektyvi sistemos logika, didinanti priežiūros kaštus
- Skaidraus „Agile“ proceso trūkumas
- Griežtai reguliuojama finansinių paslaugų („Fintech“) aplinka
Tikslai
Pirminis tikslas buvo užtikrinti, kad „INVL“ taptų visiška savo vidinių sistemų savininke ir būtų nepriklausoma nuo išorinių tiekėjų. Vėliau perėjome prie paslaugų klasterio vystymo: savitarnos portalų, administracinių sąsajų, API klientams bei brokeriams, AML sprendimų ir tapatybės valdymo sistemų. Šiems tikslams pasiekti išsikėlėme uždavinius:- Įdiegti „Agile Scrum“ metodiką
- Sukurti efektyvius komunikacijos kanalus
- Refaktūrizuoti pasenusią kodo bazę
- Integruoti tvarius atvirojo kodo sprendimus
- Iš esmės atnaujinti savitarnos UI/UX
Sukurta vertė
Siekdama tvarios partnerystės, „Toughlex“ komanda pirmiausia sutelkė dėmesį į skaidrią komunikaciją. Padėjome klientui sistemingai rinkti grįžtamąjį ryšį ir atlikti verslo analizę, kuri tapo „Agile“ veiksmų plano pagrindu. Darbai apėmė platų spektrą – nuo kodo optimizavimo iki mikroservisų architektūros plėtros.Agile procesaiEfektyviam išteklių valdymui pasirinkome „Scrum“ karkasą su trumpais iteracijų ciklais. Tai užtikrino skaidrumą, atskaitomybę ir nuolatinį tobulėjimą. Didelius tikslus suskaidėme į valdomas užduotis, o reguliarūs komandos susitikimai padėjo išlaikyti vieningą kryptį viso projekto metu.
Technologinė nepriklausomybėAtlikę išsamų kodo auditą, nuosavybinius (Proprietary) įrankius pakeitėme atvirojo kodo (Open Source) sprendimais, kurie pasižymi stipriu bendruomenės palaikymu ir aukštu saugumo lygiu. Po migracijos „INVL“ tapo visiška savo programinės įrangos savininke, įgydama pilną sistemų kontrolę.
Optimizuoti priežiūros kaštaiIdentifikavome neefektyvios logikos vietas, kurios keldavo strigimus ir brangino sistemų išlaikymą. Įgyvendinę geriausias inžinerines praktikas, pasiekėme, kad priežiūros sąnaudos ženkliai sumažėtų, o platformos plėtros galimybės taptų kur kas lankstesnės.
UI/UX modernizavimasSiekdami pagerinti vartotojų patirtį, atnaujinome savitarnos sistemą pagal šiuolaikinius dizaino standartus. Intuityvi ir vizualiai vientisa sąsaja padidino klientų pasitenkinimą, o tai tiesiogiai prisidėjo prie „INVL“ įsipareigojimo teikti aukščiausios kokybės aptarnavimą.
Technologijos
Prisijungus prie projekto, pagrindinis technologijų krepšelis jau buvo suformuotas, tad mūsų užduotis buvo užtikrinti visišką atitiktį BDAR (GDPR) ir „Fintech“ saugumo reikalavimams. Ypatingą dėmesį skyrėme autentifikavimo procesams.Sistemas vystėme naudodami „.NET“ technologijas – tai brandi ir saugi platforma su ilgalaikiu palaikymu. Infrastruktūros valdymui ir stabilumui užtikrinti pasitelkėme „Kubernetes“ bei „Docker“ konteinerizaciją.
Vartotojo sąsajai (Front-end) naudojome „React“, o duomenų mainams tarp serverio ir kliento dalių – „GraphQL“. Nors „GraphQL“ reikalauja daugiau pradinių resursų, jo lankstumas sudėtingose, duomenų talpiose platformose yra nepakeičiamas. Išorinėms integracijoms pasirinkome standartizuotą „REST“ protokolą.
Visas procesas buvo valdomas per „Azure DevOps“, apjungiant versijų kontrolę, planavimą bei nenutrūkstamą diegimą (CI/CD).
Kompetencijos
- .NET
- React
- Kubernetes
- UX/UI
- Individualių IT sprendimų vystymas
- Savitarnos sistemų vystymas
- Verslo lygio sprendimai (Enterprise)
- Agile
- TypeScript
- Komponentų biblioteka
- Azure DevOps
- Docker
- GraphQL
- REST
