Samen bouwen aan een landschap dat nooit stilstaat.
Hoe hou je een complex applicatielandschap wendbaar en toekomstgericht, terwijl de organisatie ambitieus blijft groeien?
Precies die rol speelde Mathias, onze .NET Developer & Architect, de afgelopen vijf jaar bij Accent. Een match van lange adem, en een partnership waar we trots op zijn.
Van silo's naar één gedeelde backlog
Vijf delivery teams, tientallen microservices en heel wat integraties. Bij Accent draait achter de schermen een complex softwarelandschap dat consulenten ondersteunt bij het maken van de perfecte jobmatch.
Daar bouwt Mathias al vijf jaar met hart en ziel aan mee. Hij begon als developer, groeide door tot tech lead en helpt vandaag de architecturale lijnen uitzetten.
In die tijd zette hij zijn tanden in heel wat projecten. Een greep uit zijn werk:
Vier projecten met Mathias aan boord
De website weer in beweging
Wijzigingen aan de Accent-website duurden te lang. Met een intern team werd de codebase uitgemest en de architectuur sterk versimpeld, met Drupal als CMS, een React-frontend en de API-lagen ertussen. Daarbovenop kwam een grote rebranding met een nieuw design en nieuwe features.
“Het was diep springen, spartelen en uiteindelijk altijd weer boven geraken”, lacht Mathias.
De monoliet klaar voor .NET 10
Het hart van het systeem is de MyTools-monoliet. Op weg naar .NET 10 moest die eerst van Entity Framework 6 naar EF Core. Die nieuwe versie is een pak minder vergevingsgezind, waardoor jarenlang verborgen fouten plots zichtbaar worden. Precies daar lopen veel organisaties met monolieten muurvast.
“We kozen hier voor een gecontroleerde aanpak. Eerst bouwden we samen een abstractielaag rond Entity Framework. Dankzij een feature flag kon elke app daarna in één beweging schakelen. Intussen is de migratie afgerond en ligt de weg naar .NET 10 open”, aldus Mathias.
Project Divergence
De automatisch gegenereerde 'Project Divergence'-lijst toetst elke architectuurbeslissing af over alle apps heen. Per beslissing zie je meteen welke apps al mee zijn en welke nog niet.
Teams plannen die verbeteringen gewoon mee in hun sprints, zodat geen enkele app te ver achterop raakt. Zelfs de MyTools-monoliet zit al op .NET 8. Mathias bouwde er zelf een service bus-tool bij die gefaalde berichten oplijst en herstuurt.
Platform Engineering
Het Platform Team beheert het fundament waarop iedereen bouwt: pipelines, Terraform, security en disaster recovery.
Het paradepaardje is 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.
AI in elke stap van het proces
Accent was er vroeg bij met AI, 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”, legt Mathias uit. Werkt het, dan gebruiken ze het. Werkt het niet, dan gaat het eruit.
De teams ontwikkelen volop met AI, tot commentaar op pull requests toe. Tijdens hun Learning Kata's experimenteren ze regelmatig een halve dag met nieuwe technologie. Elk kwartaal volgt een Design Day op een externe locatie, voor complexe refinements of nieuwe skills.
Ook bij de refactoring van de monoliet hielp AI een flink stuk. “Zonder AI was het veel meer werk geweest om aanpassingen op zoveel plaatsen door te voeren”, besluit Mathias.
Vijfenhalf jaar later
Accent evolueerde van waterfall-denken naar een agile werking, waar iets nieuws opstarten moeiteloos gaat dankzij de standaardapplicatie. Mathias trekt mee aan de kar, denkt na over wat beter kan en deelt zijn kennis (én zijn enthousiasme) met de teams.
Samen bouwen, op lange termijn. Just gelijk da we 't gèrn èn!