De wereld van HR-software is complex, zeker als het gaat om het efficiënt koppelen met externe pakketten en partijen. Developers bij HR2day gaan deze uitdaging dagelijks aan. “Misschien komt het door de grote hoeveelheid variabelen, maar er is nooit één oplossing die de juiste is.”
Emil Müller, teamlead development bij HR2day, kwam een jaar geleden in dienst bij zijn huidige werkgever. Tweakers speelde daar een belangrijke rol bij, vertelt hij. “Ik kom bijna elke dag wel op de website. Ik zag er een advertentie die me opviel, en een artikel over werken bij HR2day. Het sprak me aan, want ik zocht een baan waarbij ik meer thuis kon werken en ik wilde me meer in Salesforce gaan verdiepen. Zo is het balletje gaan rollen.”
Tal van koppelingen
HR2day biedt een HR- en payrollsoftwarepakket met een groot aantal modules aan. Klanten kunnen onder meer verlofaanvragen, salarisberekeningen, declaraties en beoordelingsgesprekken bijhouden met de software. Het is een op zichzelf staande (totaal)oplossing, maar er zijn ook verschillende organisaties die HR2day inzetten als ‘motor’ onder een ander systeem. “Bijvoorbeeld als rekenmachine van een pensioen- of polisadministratie”, vertelt Emil. “Of als salarismodule van een uitzendsysteem.”
Zo’n koppeling werkt als volgt: de klant voert de medewerker (of pensioengerechtigde) in een extern systeem in. Vervolgens biedt dat systeem de gegevens aan bij HR2day, dat de gegevens automatisch verwerkt en zorgt voor de salaris- of uitkeringsberekening. HR2day voorziet het externe systeem aan het einde van de rit van de resultaten, zoals betalingen, loonstroken en pensioenspecificaties.
HR is een uitdagende puzzel
De kwaliteit van de aangeleverde data zorgt voor verschillende uitdagingen. “Een arbeidscontract alleen al bestaat uit 250 velden. Het systeem dat wij bouwen moet foute data kunnen identificeren, maar ook corrigeren. Daarbij moeten we steeds de vraag stellen op welke manier we dat willen doen. Laten we het systeem een foutmelding geven, kappen we de input af als er bijvoorbeeld te veel tekens in een veld worden ingevoerd, of blokkeren we de input zelfs volledig?” Andere voorbeelden van uitdagingen zijn het matchen van datamodellen, regels bij het overschrijven van data en het juist bewaren van historische informatie. “Kunnen mutaties bijvoorbeeld met terugwerkende kracht plaatsvinden?”
HR en payrolling zijn allerminst saaie materie, stelt Emil. “Ik heb een brede interesse. Ik heb lange tijd aan e-commerce-oplossingen gebouwd en vond het wel interessant om te zien hoe andere soorten software in elkaar steken. Als ik kijk wat andere developers in ons bedrijf maken, zie ik gave oplossingen waar we geregeld leuke gesprekken over hebben. Er is nooit maar één oplossing die de juiste is, misschien wel door de grote hoeveelheid variabelen. Onlangs moest ik bijvoorbeeld een oplossing maken waarbij je een gebruiker wel of geen toegang tot een bepaald deel in de applicatie kunt geven. In Salesforce kun je dit op verschillende manieren doen. Je kunt bijvoorbeeld een ‘aangepaste machtiging’ introduceren en in de code controleren of de gebruiker gekoppeld is aan die specifieke machtiging. Maar je kunt ook een machtigingenset definiëren en de toegang tot het aangepaste object wel of niet geven, met een zelfde controle in de code. Zo zijn er nog wel meer oplossingen te verzinnen. Uiteindelijk bespreken we met elkaar welke het beste past. ”
Verschillende blikken combineren
Backend-developers werken bij HR2day aan soms complexe configuraties om koppelingen mogelijk te maken met verschillende partijen die allemaal hun eigen regels hebben voor dataformats en het aanleveren van data. Daarnaast is het ook van belang dat developers de wereld van HR en payrolling inhoudelijk begrijpen. “We kijken vaak eerst met een groepje developers met een technische blik naar een nieuw vraagstuk. Vervolgens betrekken we de klant er ook bij, waarbij we goed proberen te begrijpen wat hij van ons vraagt. Daarnaast werken we intern met product-owners. Een product-owner kan bijvoorbeeld iemand zijn die alles weet over verlof of declaraties. Hem of haar betrekken we ook in het overleg. Zo proberen we altijd in gesprek met elkaar te reflecteren op de juiste oplossingsrichting, voordat we gaan ontwikkelen.”
De ideale backend-developer bij HR2day heeft volgens Emil een achtergrond bij een verzekeraar of misschien wel ervaring met een ander salarisadministratiepakket. “Mijn ervaring en interesse ligt bij fullstack-development, maar vanwege mijn achtergrond in e-commerce ben ik nu vooral met frontend-development bezig. In ons frontend-team hebben we met name te maken met wat een medewerker en diens manager op hun scherm zien. Daarbij gaat het onder meer om selfservice zoals het aanvragen van verlof of het invoeren van een ziekmelding. Leidinggevenden krijgen een overzicht waarin ze die ziekmeldingen inzien en verlofaanvragen kunnen goedkeuren. Wij werken samen met twee backend-teams, waarbij we onderling veel contact hebben. Als je bijvoorbeeld iets over verlof moet tonen op het scherm, is het wel zo handig om te schakelen met iemand in het backend-team die aan de verlofmodule werkt.”
Efficiënt platform
HR2day is vanaf dag één ontworpen vanuit het principe van oneindige schaalbaarheid, waarbij gebruikgemaakt wordt van Salesforce. Dit was voor Emil een van de redenen om bij HR2day te gaan werken, nadat hij lange tijd in de ‘SAP-wereld’ actief was. “Mensen denken bij Salesforce vaak aan crm, maar het is meer dan dat. Het is ook een framework en een platform waarop je elke applicatie kunt bouwen en hosten. Salesforce blijft zich bovendien doorontwikkelen, bijvoorbeeld met Lightning Web Components een framework dat te vergelijken is met Angular en React. Dat is voor mij een welkome verandering, na lange tijd vooral met Java op SAP te hebben gewerkt.”
Een van de kenmerken van Salesforce is dat je er als developer te maken hebt met technische limieten, vooral op het gebied van geheugengebruik en transactieduur. Emil ervaart dit als positief. ”Je moet binnen die limieten blijven en daarmee dwingt Salesforce een bepaalde kwaliteit en stabiliteit van het platform af. Zo hebben handelingen van de ene gebruiker, bijvoorbeeld als hij of zij een query zou uitvoeren die te veel rekenkracht nodig heeft, nooit een negatieve impact op de performance voor andere gebruikers."
Nauwelijks omkijken naar architectuur
Als developer merkt Emil dat hij sinds zijn komst naar HR2day efficiënter werkt. "Zoals gezegd kom ik uit de SAP-wereld en als je als developer kijkt hoe de cloudoplossing van Salesforce georganiseerd is, zie je wel dat die een voorsprong heeft. Ik hoef bijvoorbeeld niet meer na te denken over de machine waarop mijn software moet draaien of over de technische architectuur. Het is een cloudoplossing die eenvoudig kan worden opgeschaald. Wel is het natuurlijk zo dat je te maken hebt met regels van het Salesforce-framework. Daardoor ben je direct een stuk efficiënter aan het ontwikkelen. Je maakt objecten bijvoorbeeld niet snel te groot en ook vind ik het positief dat systeemtesten standaard worden afgedwongen op het platform.”
Na een jaar bij HR2day is Emil nog altijd heel enthousiast. “We werken hier allemaal vanuit huis, we hebben zelfs helemaal geen kantoor. Ik heb fijne collega’s die altijd beschikbaar zijn om je verder te helpen, en heus niet alleen tussen 9 en 5. Die betrokkenheid is onze kracht. Ik vind het een beetje jammer dat we elkaar door de lockdown alleen maar digitaal zien. Het is eigenlijk het streven om maandelijks bij elkaar te komen, bijvoorbeeld door samen uit eten te gaan. Ik kijk uit naar het moment dat dat weer kan.”
Meer weten over werken bij HR2day of benieuwd naar openstaande vacatures die bij jou passen? Check het hier.
*Edit - 21 mei (08:39 uur): titel aangepast.
Dit artikel is geen redactioneel artikel, maar een advertorial en tot stand gekomen dankzij HR2Day en Tweakers Partners. Dit is de afdeling binnen Tweakers die verantwoordelijk is voor commerciële samenwerkingen, winacties en Tweakers-events zoals Meet-ups, Developers Summit, Testfest en meer. Kijk hier voor een overzicht van alle acties en events. Mocht je ideeën met ons willen delen over deze vorm van adverteren, dan horen wij dat graag. Hierover kun je met ons in gesprek via [Discussie] Reclame algemeen].