Accent

Hoe Mathias meebouwt aan het applicatielandschap van Accent.

.NET

Partnerships, daar hechten we bij OnCore énorm veel belang aan. En daarbij is de ultieme match tussen klant en consultant cruciaal. Soms is die match zelfs zó goed dat het een verhaal van lange adem wordt. 

Dat is precies het geval bij Mathias, onze .NET Developer & Architect. Intussen al vijfenhalf jaar aan boord bij HR-dienstverlener Accent. 

Hoog tijd om een blik achter de schermen te werpen! 

Van gefragmenteerde silo's naar één gedeelde backlog

Binnen Accent werken vijf delivery teams aan interne software voor de consulenten in de kantoren. Met een beduidend aantal consulenten én kantoren betekent dat: een complex applicatielandschap, veel integraties en tientallen microservices. 

Een landschap dat bovendien constant evolueert, om mee te bewegen met de groei van Accent, de noden van de consulenten en een markt die niet stilstaat. 

Je kan het je al voorstellen: dat applicatielandschap onderging al enkele stevige transformaties, en Mathias maakte ze vanop de eerste rij mee. De grootste? De switch van sterk gefragmenteerde silo’s naar LeSS, een multi-team scrumaanpak. 

“Vandaag schuiven alle teams samen aan voor hun scrumvergaderingen en werken ze vanuit één gedeelde backlog. Iedereen kan aan om het even wat werken, al blijft elk team baas over zijn eigen apps en services”, vult Mathias aan. 

En Mathias zelf? Die groeide gewillig mee door de jaren heen. Hij startte als developer in team ‘de Sultans of Code’, groeide uit tot tech lead bij Defqode One en later Code Comets, en waakt daarnaast mee over de richtlijnen in de architectuurgilde. 

Een greep uit de projecten waar hij mee zijn schouders onder zette: 

Vandaag schuiven alle teams samen aan voor hun scrumvergaderingen en werken ze vanuit één gedeelde backlog. Iedereen kan aan om het even wat werken, al blijft elk team baas over zijn eigen apps en services.

Mathias Cheyns
.NET Developer

De Accent-website weer in beweging 

“De Accent-website was aan een upgrade toe: wijzigingen duurden te lang. Met een intern team hebben we de codebase uitgemest en de bestaande architectuur, met Drupal als CMS, een React-frontend en de API-lagen ertussen, sterk versimpeld. Daarbovenop kwam een grote rebranding met nieuw design en nieuwe features”, vertelt Mathias. 

Het resultaat: een website die weer vlot mee-evolueert, met een frisse look en nieuwe features. Mathias draaide voluit mee in het websiteteam, en dat in een compleet andere stack dan hij gewend was. En dat betekende vaak: “diep springen, spartelen en uiteindelijk altijd weer boven geraken”, voegt hij lachend toe. 

Refactoring van de monoliet

Naast die tientallen microservices klopt er bij Accent nog een ander hart: de MyTools-monoliet, de kern van heel het systeem. Ook die moest mee naar de toekomst, met .NET 10 als einddoel. Dat vroeg eerst een migratie van Entity Framework 6 naar EF Core, de ORM-laag tussen applicatie en database.  

Klinkt als een detail, is het allerminst: EF Core is een pak minder vergevingsgezind dan versie 6, waardoor jarenlang verborgen fouten plots zichtbaar worden. Net daar lopen veel organisaties met monolieten muurvast. 

Mathias koos voor een gecontroleerde aanpak. Eerst bouwde hij een abstractielaag rond Entity Framework: een maand intensief engineeringwerk, midden in het meest kritieke stuk code van Accent. 

Die investering betaalde zich dubbel en dik terug. Dankzij een feature flag kon elke app in één beweging schakelen Ging een release toch de mist in op productie, waar de load nu eenmaal anders is, dan draaide Mathias ze meteen terug en releasete hij gewoon opnieuw. 

Zo migreerde Accent stap voor stap, zonder onnodig risico. Intussen is de migratie helemaal afgerond en ligt de weg naar .NET 10 open. 

Project Divergence: applicatie modernisatie

Met de automatisch gegenereerde ‘Project Divergence’-lijst houdt Accent het applicatielandschap gezond. Elke architectuurbeslissing wordt gedefinieerd en afgetoetst over alle apps heen. Zo ontstaat een concrete, altijd up-to-date lijst van to do’s: per beslissing is meteen duidelijk welke apps al mee zijn en welke nog niet. 

Een kleine effort, met een gigantische meerwaarde: teams plannen die technische verbeteringen gewoon mee in hun sprints, waardoor geen enkele app te ver achterop raakt. Zelfs de MyTools-monoliet zit intussen al op .NET 8.  

Mathias droeg zijn steentje bij met een zelfgebouwde service bus-tool die gefaalde berichten oplijst en herstuurt.  

Platform engineering: een nieuwe microservice binnen het uur

Het Platform Team, waarbinnen Mathias ook enkele weken als gast meedraaide, staat los van de vijf delivery teams en beheert het fundament waarop iedereen bouwt: pipelines, Terraform, security en disaster recovery. 

Het paradepaardje: een standaardapplicatie die teams meteen kunnen uitrollen. Is er een nieuwe microservice nodig, dan draait er binnen het uur een werkende service die volledig volgens de richtlijnen in elkaar zit. Zo blijft het applicatielandschap consistent en up-to-date, zonder dat de delivery teams onnodig tijd verliezen. 

Onze microservicearchitectuur werkt zo goed omdat we er constant op verder werken. Er houdt altijd iemand in de gaten waar we naartoe moeten, we sporen alle teams aan om die beweging te maken en houden alles up-to-date. Zo’n platform zie je niet veel, en dat is een meerwaarde.

Mathias Cheyns
.NET Developer

AI in elke stap van het proces

Accent was er vroeg bij wanneer het op AI aankomt, zoveel is zeker. En dat zowel in de manier van werken als in de applicaties zelf. 

“Het begon met een hackathon, waar we volop ideeën rond AI aftoetsten. Heel wat van die ideeën, zoals de CV-parser, werden effectief uitgewerkt”, vult Mathias aan. 

Hier toont zich opnieuw de pragmatische manier van werken binnen Accent, exact waar Mathias zo’n fan van is: werkt het, dan gebruiken ze het, werkt het niet, dan gaat het eruit. 

Daarnaast ontwikkelen de teams volop met AI, tot commentaar op pull requests toe. Om iedereen scherp te houden, experimenteren de teams tijdens hun ‘Learning Kata’s’ regelmatig een halve dag met nieuwe technologie, of scherpen ze hun bestaande skills aan. En elk kwartaal is er een Design Day waarop iedereen samenkomt op een externe locatie voor complexe refinements of nieuwe skills. 

Ook in de monolietrefactoring speelde AI een grote rol. “Zonder AI was het veel meer werk geweest om aanpassingen op zoveel plaatsen door te voeren. Sneller schakelen, in plaats van alles manueel aan te passen”, besluit Mathias. 

Vijfenhalf jaar later: meer agile, meer kennisdeling

De technische evolutie is duidelijk: van waterfall-denken naar een agile werking met meer flexibiliteit, waar iets nieuws opstarten moeiteloos gaat dankzij de standaardapplicatie. En de rol van Mathias? Mee aan de kar trekken, nadenken over wat beter kan en kennis (én enthousiasme, uiteraard!) verspreiden. 

Precies het soort partnership waar OnCore voor staat.

Vliegen we er samen in?

Of stuur ons een berichtje, wij nemen snel contact met je op!

"*" geeft vereiste velden aan

Dit veld is bedoeld voor validatiedoeleinden en moet niet worden gewijzigd.