S tradicijom dužom od 25 godina, više od 150 zadovoljnih klijenata i više od 250.000 korisnika, naprednim modulima koji podržavaju i administrativne i razvojne procese i obračun plaće, možemo reći da je HRnet kompletno digitalno Human Resources (HR) rješenje prepoznato i dokazano u praksi na regionalnom tržištu.
HRnet je u potpunosti „hrvatski razvoj“, nastao kao inovativan projekt krajem 90-tih kada nije bilo HR-a u našim kompanijama, a kamoli softvera koji podržava sve HR procese u jednoj aplikaciji. Zanimljivo je da je na samom početku donesena odluka da se radi na razvoju produkta, a ne na razvoju projekta za jednog specifičnog klijenta.
Od sredine srpnja 2022. HRnet je akvizicijom postao dio portfolia SD Worx-a, najvećeg pružatelja HR rješenja i usluga te izdvojenog obračuna plaća. SD Worx je kompanija sa tradicijom dužom od 75 godina koja ostvaruje 962mil € prihoda te zapošljava više od 7.000 ljudi u 26 ureda, pokriva više od 150 zemalja.
Tehnološka i funkcionalna perspektiva
Na samom početku, HRnet je zamišljen kao cjelokupno ERP rješenje, da bi se samo nekoliko godina kasnije tvrtka odlučila za specijalizaciju usmjerenu prema ljudskim potencijalima tj. HRIS aplikaciji (Human Resources Information System).
Tehnološki gledano, prve verzije aplikacije bile su pisane u Visual Basicu 6 (kao win32 desktop aplikacija) dok se za bazu koristio SQL Server 7.0 i SQL Server 2000. Ubrzo, već krajem 2001. napisana je prva verzija HRnet-a u Microsoft .netu 1.0 (tada u beta verziji) i to kao web aplikacija. Od tog se trena kompletan razvoj bazira u .net frameworku odnosno .net coreu . Od samih početaka razvoja HRnet-a, odabran je Microsoft stack. Tadašnja je kompanija, HRPro, isto kao i sadašnja, SD Worx imala status Microsoft Gold partnera. Time se potvrđuje posvećenost Microsoft tehnologijama i kontinuirano ulaganje tvrtke u certifikaciju zaposlenika u razne Microsoft tehnologije, prvenstveno vezane uz razvoj.
Funkcionalno, HRnet pokriva sve procese kadrovske administracije, regrutacije i selekcije, obračuna plaća, upravljanja radnim vremenom, razvoja talenata (kompetencije, performance management, feedback i planiranje razvoja) te Self Service portal za korisnike (zaposlenici, asistenti, manageri).
Procesi se i dalje razvijaju i nadograđuju jer znamo kako se brzo mijenjaju trendovi i da se svi bore za talente (npr. rad od kuće, book my table, nove naknade i benefiti, referral bonusi i sl.) pa digitalna tehnologija treba služiti kao izvor podataka i podržavati stakeholdere u donošenju pravovremenih i kvalitetnih odluka. HRnet je 2010. godine dobio Microsoft ISV nagradu „Rješenje s najvećom poslovnom vrijednošću“ koja je potvrdila koliko brinemo o funkcionalnostima i korisnosti aplikacije.
Do 2013. godine HRnet je bio prvenstveno aplikacija koja se instalirala u on premise okruženju gdje je klijent osiguravao potrebnu infrastrukturu, kada je napravljena prva cloud verzija u skladu s trendovima na tržištu. Već 2014. smo dobili inovacijsku nagradu Hrvatsko-Njemačke gospodarske i trgovačke komore za Cloud projekt za Deutsche Telekom pod nazivom “Top Leadership Team Europe”. Budući razvoj HRneta će još više biti fokusiran na cloud okruženje i SaaS model.
Arhitektura aplikacije
Kada govorimo o samoj arhitekturi HRnet-a, moglo bi se reći da je ona naizgled jednostavna, front end i back end napisani su u .net coreu/javascriptu i koriste SQL Server kao bazu. Međutim kako aplikacija živi već više od 20 godina, postoje različite komponente cjelokupnog rješenja, izdvojio bih sljedeće:
- Web api servisi za komunikaciju između komponenti (mobilni dio, eksterni dio)
- Web api servisi za integracije s ostalim sustavima o HRnet je u enterprise okruženju uvijek izvor svih informacija o zaposlenicima i prvo mjesto gdje se neki zaposlenik unosi
- Aspose set kontrola – koristi se za izradu dokumenata – npr. predlošci za ugovore
- Mouseflow za praćenje načina korištenja aplikacije i općenito praćenje user experience-a
- Podrška za SSO, SAML, PKI, OTP autentikaciju
- Neke od ostalih 3rd party komponenti o DevExtreme za gridove i ostale UI komponente
- Font Awesome za ikone
- Mireo maps za prikaz mapa u aplikaciji npr. u putnim nalozima o BlinkID za skeniranje dokumenata o yFiles za organigrame o i puno drugih
- Integracije sa SAP i Namirial sustavima kao tipične ERP platforme ili platforme za digitalni potpis
HRnet baza je „mozak“ aplikacije koji procesira podatke, relacije, operacije te omogućava prilagodbe za specifične zahtjeve klijenata upotrebom različitih shema na SQL objektima. To je ujedno i jedna od prednosti koje su nas istaknule na tržištu.
HRnet baza sadrži preko 1.800 tablica, 8.000 stored proceduri, 900 funkcija (table i scalar) te preko 400 view-eva.
HRnet aplikacija ima preko 800 ekrana organiziranih u 23 modula, a koji čine sljedećih 6 područja:
- Osnovni HR procesi (kadrovska administracija, organizacijska struktura, self service)
- Putni nalozi i troškovi
- Plaće i nagrađivanje
- Planiranje, evidencija, obračun radnih sati
- Regrutacija i selekcija
- Talenti, karijera, učinak, kompetencije, razvoj, feedback
Izazovi u dugoročnom razvoju produkta
Tijekom svoje povijesti HRnet je prošao nekoliko faza razvoja, a SQL Server je uvijek u pozadini bio korišten kao baza i to u pravilu uvijek zadnja dostupna verzija.
Sam razvoj aplikativnog dijela HRnet-a pojednostavljeno je tekao ovako:
- .NET 1.0 i .NET 1.1, Javascript i VBScript, ActiveX kontrole na klijentu za kompleksnije ekrane poput kalendara godišnjih odmora od 2000. – 2005. – ovo je bilo jedno uzbudljivo razdoblje upoznavanja s web tehnologijama. ActiveX radi samo u Internet Exploreru. S ovom verzijom .NET-a, bio je i problem 32-bit servera odnosno aplikacija nije mogla iskoristiti više od 4GB (tj. više od 3.5 GB) RAM-a što je postupno postajao sve veći problem. Odluka oko VBScripta nije bila odluka nego dio nasljeđa jer se prije radilo u Visual basicu pa je to bilo prirodno (facepalm).
- .NET 2.0+, javascript 2005. – 2010 – ukinuli smo ActiveX kontrole, ali i dalje je postojala velika ovisnost o Internet Exploreru (jedna od grešaka…)
- .net 4.0+, javascript 2010 – 2020 – uvođenje HTML5 standarda i postupna podrška i za ostale browsere
- .net 5/Core – 2020. > – migracija aplikacije na .net core – 800+ webforms ekrana na 800+ razor pageva s potpuno novim UI i UX
U sklopu svih migracija između .net verzija, bilo je potrebno migrirati sve procese što nije baš najjednostavnije jer usprkos relativno velikom razvojnom timu, fokus je i dalje morao biti na klijentu tj. korisničkom iskustvu i pouzdanosti za business critical procese pa je trebalo pametno procijeniti kad je najbolji ili najpovoljniji trenutak za migraciju.
Problem su katkada bile i 3rd party kontrole koje su promjenom verzije znale u potpunosti mijenjati način korištenja, tako da nije postojao samo izazov nadogradnje verzije .neta već i samih kontrola. Također, kroz sve je ove godine bilo potrebno napisati 15ak novih modula od početka kao i riješiti više od 9000 change requestova koje su kupci naručili kroz godine.
U rješavanju svih navedenih izazova (i brojnih drugih koji su nas dočekali po putu), pomogle su nam sljedeće odluke:
-
Business continuity
Zbog početne bliske suradnje s korisnicima, i prije nego što je „design thinking“ postao popularan, znali smo da su oni naše važne „persone“ s kojima smo usklađivali našu viziju, misiju strategiju, pisali i dijelili razvojne planove (HRnet roadmap) te certificirali kvalitetu, sigurnost i kontinuitet poslovanja. Ovakav pristup traži i jako dobru validaciju novih verzija (kada je pravi trenutak s poslovne, tehnološke i marketinške strane).
-
One codebase
Jedna od većih odluka, koja je na sreću bila ispravna, bila je i odluka još cca. 2005. da se za sve implementacije koristi jedna verzija aplikacije tj. 1 codebase tako da klijent sa 100 zaposlenika i 3 modula ima istu verziju aplikacije kao i onaj s 50000 zaposlenika i 20+ modula. Postojala je mogućnost odabira da li iz jednog master codebase-a imati posebnu verziju (branch) za svakog pojedinog klijenta ili ne. Odlučeno je da se u nastavak razvoja ide samo s jednom verzijom prema svim klijentima te da će se posebnosti svakog klijenta rješavati kroz konfiguracijske parametre kojih ukupno ima više od 500. Ovakva odluka za klijente znači lakše „dobivanje“ novih funkcionalnosti, a za nas sigurnije i brže održavanje i nadogradnju.
-
Cloud / SaaS model
Izazov prelaska na najnovije dostupne tehnologije često je prisutan iz razloga što u pravilu uvijek postoje određeni klijenti koji tu promjenu ne mogu ispratiti, npr. ne mogu svi na najnoviji SQL server ili nemaju interne resurse za instalaciju, backup, nadogradnju tehničke okoline. Zbog toga danas najviše preporučamo spajanje „softvera i usluga“ ili popularni SaaS model u kojem mi brinemo o svemu. Jedna od prednosti cloud modela je i uvijek najnovija verzija HRneta što nije uvijek slučaj u on premise načinu.
-
Business, design & tech leadovi kao core team
Ključne odluke o funkcionalnostima i tehnologiji tj. komponentama podijeljene su između više stakeholdera (business, design i tech leadova), koji ponekad pričaju različitim (programskim) jezicima, ali kad se povežu oko svrhe, očekivanja, novih mogućnosti i inovativnih ideja, donose zajedničke pametne odluke kako se lifecycle aplikacije ne bi doveo u pitanje.
-
Data security
Nisu iste politike sigurnosti niti potrebe kompanije od 500 i 15.000 zaposlenika, maloprodajnih i turističkih djelatnosti, telekoma ili financijskog sektora, ali ono što je isto je isti standard HRneta po pitanju sigurnosti i povjerljivosti podataka. Različite industrije koje koriste HRnet, sam razvoj aplikacije te važnost podataka, je znatno utjecalo na povećanje sigurnosti i zaštite podataka tako da se redovito koriste SonarQube i Veracode platforme za osiguranje kvalitete i nužno preventivno djelovanje.
Aplikacija redovito prolazi penetracijsko testiranje, a naši kolege redovito osvježavaju svoje znanje o sigurnom programiranju. Dodatno, tvrtka je certificirana za ISO 27001 i ISO 9001, a trenutno je u postupku certifikacije za ISAE 3402 koji se posebno bavi internim kontrolama pa tako i sigurnosti u području pružanja usluga.
-
Optimizacija performansi i razvoj UX-a
Tijekom godina postojali su i izazovi i sa skaliranjem HRneta. Ono što je radilo dobro na implementaciji od 1000 zaposlenika nije radilo dovoljno dobro na implementaciji od 10.000+ zaposlenika. Zato kontinuirano pratimo i poboljšavamo performanse kroz optimizaciju SQL procedura jer svaka nova verzija SQL servera donosi i neke nove funkcije kao i općenito poboljšanja. Poseban je i naglasak na optimizaciji .net koda također, a još više u uskoj suradnji s našim UX timom koji brine o korisničkom iskustvu i optimizaciji korisničkog sučelja.
Lessons learned – Da smo barem znali ranije….
Na tom našem putu, nakupilo se i ponešto upitnih odluka koje bi voljeli da se nisu dogodile, ali i njih smo shvaćali kao dio procesa učenja i razvoja jednog ovako kompleksnog proizvoda, izdvojio bih dvije:
- Odabrali smo Internet explorer kao glavni podržani browser. Ukidanje IE specifičnosti odnosno prelazak na ostale browsere je bio naročito bolan u nekom trenu.
- U jednom trenutku jedan smo modul u potpunosti razvili na Silverlightu koji je ubrzo napušten od strane Microsofta
Budućnost
U sljedećem roadmapu neke od tema koje ćemo adresirati:
- Servis za upravljanje aplikacijom u cloud i on premise okruženju koji će podržavati održavanje aplikacije, dojavu kritičnih grešaka ili degradaciju performansi, automatsku nadogradnju aplikacije i naplatu korištenja
- Integracija s ostalim SD Worx servisima i aplikacijama
- Prilagodbe i optimizacije za MPS – „managed payroll service“ odnosno uslugu obračuna plaća. Ovdje se radi o posve novoj usluzi koju će nuditi SD Worx Adriatic u početku za tržište Hrvatske, Srbije i Slovenije
- Nastavak razvoja integracije s Office 365 platformom.
- Kreiranje Teams bota za HRnet
- Integracija s AI chat botovima – sve veća je potreba za out of box rješenjima koja bi pomagala HR stručnjacima u rješavanju svakodnevnih pitanja oko standardnih procedura (npr. što mi sve treba za potvrdu o kreditu, koji je pravilnik za godišnje odmore itd.)
Primjer iz prakse: Znate li kako se tehnički provodi jedan ‘payroll run’?
Za jedan obračun plaće U kompaniji sa 12.000 zaposlenika, potrebno je napraviti 10-20 testnih obračuna čije je prosječno trajanje 14 minuta po obračunu. Na kraju procesa to rezultira sa cca. 1.2 milijuna transakcija jer se radi sljedeće (jako pojednostavljen opis) :
- Dohvat pravila obračuna plaće za državu
- Dohvat pravila odnosno posebnosti za poduzeće za koje se radi obračun – npr. poseban faktor za staž (minuli rad)
- Dohvat ugovorenih plaća, bankovnih računa, olakšica, općina prebivališta, općina rada i ostalih kadrovskih podataka
- Dohvat svih unesenih sati i iznosa (razni dodaci, prijevoz, prehrana itd.)
- Dohvat svih odsustava i izračun potrebnih prosjeka – bolovanja, godišnji odmori, plaćeni dopusti itd.
- Dohvat svih obustava i kredita
- Obračun sati tj. konverzija sati u iznose
- Obračun svih iznosa (bruto i neto) – jednostavne i ne tako jednostavne računske operacije
- Izračun svih poreza, prireza, doprinosa – po zaposleniku, općini, mjestu troška, organizacijskoj jedinici
- Priprema svih datoteka za isplate (virmani) – po zaposleniku, općini, banci – još uvijek su to najčešće datoteke.
- Priprema ostalih datoteka – u Hrvatskoj je to JOPPD obrazac
- Priprema temeljnica za knjiženje u glavnu knjigu
- Kreiranje isplatnih listi – najčešće u pdf
- Kriptiranje i slanje isplatnih listi ukoliko je potrebno tj. ako nema self servisa gdje zaposlenik može sam pogledati isplatnu listu
14 minuta za 12.000 zaposlenika nije loše, ali cilj je smanjiti trajanje za barem 30%. Zato je imperativ i nadgledanje sustava i praćenje performansi (statistika izvršavanja) kako aplikacije tako i baze kao i primjena novih tehnologija i znanja.
Testni obračuni služe kako bi se obračunali dijelovi obračuna kao npr. bolovanja ili posebni unosi.
I za kraj
HRnet je složen proizvod koji rješava još složenije Human Resources izazove za naše korisnike. Sve te izazove smo rješavali tehnologijom, iskustvom i znanjem, ali i velikom motivacijom i predanošću naših kolega koji su ugradili ogroman trud da bi HRnet bio vodeći HRIS (aplikacija za upravljanje ljudskim potencijalima) u regiji.
Želimo istaknuti i kulturu SD Worx-a s kojom se ponosimo, te da imamo 63% žena u timu, 66% žena u managementu (ne fali nam komunikacije 😊), a imamo i 21 kolegicu i kolegu koji su s nama dulje od 8 godina (>20%). Veselimo se budućem rastu – i prema novim tržištima i klijentima i novim kolegama koje ćemo rado primiti u naš tim! Dobrodošli u SD Worx!