Hoe maak je van een bijna twee eeuwen oude financiële dienstverlener een technologiebedrijf dat softwareproducten maakt waar klanten van houden? NN Group (NN) maakt een grote technologie- en cultuuromslag, naar een organisatie waarin software-engineers het hart van de verandering vormen.
Van pensioenoverzicht tot levensverzekering of hypotheek: het is allemaal digitaal geworden, gebouwd op een digitale infrastructuur. "Dat betekent dat als je niet transformeert naar een technologiebedrijf, je de slag naar de klant gaat missen", vertelt Rob Visser, CIO van NN Group. Die klant verwacht meer controle over de eigen financiële situatie, met relevante informatie die daarbij kan helpen. NN Group, bekend van financiële dienstverleners zoals Nationale-Nederlanden, Befrank, Movir en OHRA, zet daarom sterk in op het mobiele kanaal voor retailers, zakelijke klanten en intermediairs, met een mix van webportals, apps en api's.
Dit klinkt logisch, maar hoe zet je een grootschalige transformatie op touw? Veel begint met het technologische fundament. “Veel van onze core-systemen draaien inmiddels in de cloud”, zegt Henk Kolk, hoofd architectuur en product engineering. “Werkplekken zijn volledig gedigitaliseerd, security is up-to-date met een eigen Security Operations Center en er is een zeer modern dataplatform gebouwd. Maar we zijn er nog niet. Het uitfaseren van legacy-systemen en vervangen van legacy-technologieën is een continu proces”.
Tooling en vakmanschap
Softwareproducten waar klanten en gebruikers van houden, zijn leidend bij de transformatie van NN. Het bedrijf wil zich meer organiseren als een digital product company in plaats van een verzekeringsbedrijf. Daardoor zal het bij alle onderdelen werken met empowered product teams, geleid door mensen met vakkennis. Rob: “Ons doel is om awesome software te maken. Dit kan door onze technologische mogelijkheden goed in te zetten met een modern designsysteem en het naar een hoger plan brengen van de CI/CD-pipelines, maar vooral door te investeren in vakmanschap. Daarbij zijn senior engineers onze cultuurstarters. Zij delen hun kennis met junior engineers en creëren prestatienormen.”
Gaandeweg wordt verouderde technologie vervangen door nieuwere, effectievere systemen. Een mooi voorbeeld is het gebruik van containertechnologie bij NN. "Wij zijn tweeënhalf jaar geleden begonnen met Kubernetes", vertelt Daan, Cloud Engineer bij NN. Elk bedrijfsonderdeel binnen NN heeft twee tot vier clusters draaien, met daarin ontwikkel-, test-, acceptatie- en productieomgevingen. "Wij doen alles in toenemende mate door middel van self-service. Wanneer een team een namespace nodig heeft en nodes om hun workloads op te draaien, maakt het gebruik van onze operators. Daarmee start een proces waarmee je bijvoorbeeld in AWS of Azure nodes kunt deployen, of een Gitlab-runner of namespace aanmaakt volgens de veiligheidsstandaarden van NN."
Lerende organisatie
De bedoeling is om teams volledig zelfstandig te laten werken en de verantwoordelijkheid te geven overMet behulp van een buddy-systeem wordt iedereen aangemoedigd om in zichzelf te investeren.
hun eigen softwareproducten. Daarbij zijn producteigenaren die zijn gekozen op basis van hun vaardigheden met een skill matrix bepalend voor wat teams bouwen. Kennis is ondergebracht in zogeheten gildes die gericht zijn op het continu verbeteren van het vakmanschap. Met behulp van een buddy-systeem wordt iedereen aangemoedigd om in zichzelf te investeren. Henk: “We zijn een lerende organisatie aan het bouwen. Het recept daarvoor? Deels zit dit in subtiele dingen, zoals het uitschrijven en toetsbaar maken van profielen. Het zit daarnaast ook in het blijven leren aan de hand van training, maar vooral ook de backlogs van de productteams. Je leert het vak voor 70 procent door het te doen en de kans te krijgen om het met moderne technologie uit te voeren.”
Het containerplatform
Het team draait meerdere operators voor selfservice. De eerste daarvan werd met Ansible gebouwd. "Toen wij begonnen met Kubernetes waren we allemaal al bekend met Ansible en het is goed als je ergens een aanknopingspunt hebt in zo'n project", zegt Daan. "Maar het is wel echt configuratiesoftware en niet bedoeld om in runtime te draaien. We hadden een extra worker-node per cluster nodig en zelfs daarmee kostte het te veel tijd voor Ansible om alle items binnen een cluster regelmatig te controleren. Daarom zijn we naar alternatieven gaan kijken. Als je kijkt naar Kubernetes, is er eigenlijk maar één first-class citizen en dat is Golang. Voor ons was het een nieuwe taal, maar in een half jaar tijd hebben we alles overgeschreven naar Go en inmiddels hebben we een hele node per cluster weg kunnen halen. Van de 1,5cpu die Ansible nodig had, zijn we naar 0,3cpu gegaan, voor vier operators."
Honderden applicaties draaien inmiddels op het containerplatform, waaronder verschillende van Nationale-Nederlanden Bank. Daan: "Engineering-teams kunnen ervoor kiezen om zelf instances op te starten bij Azure of AWS, maar dan hebben ze nog geen monitoring en security. Het platform verzorgt monitoring en security door middel van opensource-tools zoals Prometheus en Falco. Voor de applicatie zelf moeten de teams nog wel hun eigen monitoringregels opstellen, maar alles staat in principe voor ze klaar. En wij verzorgen het lifecycle-management van deze componenten. Onze engineeringteams hebben zo geen omkijken naar de infrastructuur en kunnen doen waar ze goed in zijn: het bouwen van kick-ass softwareproducten."
Goede engineers werken vanzelf agile
Henk is zich ervan bewust dat veel van wat NN nu doet, op zich niet nieuw is. ”Wat wij in ieder geval willen, is uitgaan van de digitale producten en ze door ervaren mensen laten bouwen. In teams met goede product-owners, product-designers, data-scientists waar mogelijk, en software-engineers. Met de motivatie om zichzelf continu te verbeteren, waarvoor je ook de formele systemen moet gaan inrichten zoals wij dat nu doen. Wij kijken vanuit onze strategie naar de vaardigheden die we nodig hebben en zetten daar maximaal op in. Daarbij schrijven we teams niet alles voor als het gaat om hoe ze moeten werken. Goede engineers zullen zelf wel de agile-rituelen toepassen. Hun echte doel is natuurlijk niet de dagelijkse stand-up of scrummen, maar het bouwen van werkende software die ertoe doet voor klanten.”
Wat wij in ieder geval willen, is uitgaan van de digitale producten en deze laten bouwen door ervaren mensen
Bovenstaand verhaal betekent dat NN meer inzet op het vergroten van de kennis op specifieke gebieden. Er zijn negen rollen gedefinieerd waarmee NN het verschil wil maken. "Dan moet je onder andere denken aan customer-researchers, user experience-designers, product-owners en fullstack-engineers.” Om de juiste mensen te vinden, moet een werkgever natuurlijk wel iets hebben te bieden. Henk: “Ik identificeer mezelf nog steeds als software-engineer en weet wat engineers nodig hebben: autonomie, een goede tech-stack en mensen om je heen die het ook begrijpen. Daar zorgen wij voor.”
Maar het gaat óók om (maatschappelijke) relevantie in je werk. Rob: je werkt hier in een bedrijf dat een belangrijke plek heeft in de Nederlandse samenleving. Als je kijkt naar grote ontwikkelingen in de wereld, zoals klimaatverandering, zie je dat vertrouwen belangrijk is en dat je er als bedrijf moet staan op momenten dat het erom spant. Neem bijvoorbeeld de recente overstromingen in Duitsland, België en Nederland. Dit zijn de momenten waarop het erom gaat dat we er kunnen zijn voor onze klanten. Dat is uiteindelijk waar we het elke dag voor doen.”
Meewerken aan de volgende versie van NN? Benieuwd naar vacatures die aansluiten bij jouw profiel? Check het hier.
Dit artikel is geen redactioneel artikel, maar een advertorial en tot stand gekomen dankzij NN Group 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].