Containers Projecten OpenShift

8-jul-2020

Praktijkcase Topicus: Sneller ontwikkelen, schalen en in productie

praktijkcase openshift topicus

Het is de heilige graal voor softwareontwikkelaars: zo snel en betrouwbaar mogelijk ontwikkelen, testen, accepteren en in productie gaan. Maar hoe pak je dat op een gestructureerde, uniforme manier aan? Welke technologie en organisatorische aanpassingen zijn daarvoor nodig? Lees het verhaal van Topicus, divisie Finance.

Topicus is een softwarehuis van Nederlandse bodem. Topicus ontwikkelt software voor uiteenlopende sectoren, waaronder het onderwijs, de zorg en voor overheden. Er werken ongeveer 1.000 mensen bij Topicus, waarvan 300 binnen de sector Finance. Hier worden onder andere mid- en backoffice-oplossingen ontwikkeld voor financiële instellingen zoals banken. Ruim 3 miljoen van de 4,3 miljoen hypotheken in Nederland worden via het Topicus platform afgehandeld.

HCS Company implementeerde recent OpenShift bij de sector Finance van Topicus en hielp zo om meer structuur aan te brengen in het ontwikkelproces. Het resultaat: een groot, schaalbaar en makkelijk te beheren platform op basis van Kubernetes én ontwikkelaars die sneller, effectiever en met meer plezier werken. En, niet onbelangrijk: eenvoudiger beheer en lagere beheerskosten.

Het belang van gestandaardiseerd ontwikkelen

"We werkten al op basis van agile principes en met containertechnologie” zegt Michiel Schipper, managing director van Topicus sector Finance. “Maar er was toch nog te veel sprake van zelfbouw. Er werden veel custom scripts gebouwd door ontwikkelteams om applicaties en platforms in productie te krijgen. Omdat ieder team eigen oplossingen bedacht, werd het complexer om werkzaamheden te schalen, software te onderhouden of teams met elkaar mee te laten draaien. En beheerders kregen te maken met uiteenlopende problemen die deze verschillende manieren van werken ongewild met zich meebrachten.” Michiel: “Eigenlijk waren we allemaal steeds minder tevreden met onze manier van werken en de tools die we daarvoor gebruikten. Ook vanuit zakelijk oogpunt begon het steeds meer te knellen dat veel uren die besteed werden aan beheer en ‘het werkend maken van applicaties’ onzichtbaar waren voor klanten. Het was, kortom, tijd voor vernieuwing waarbij standaardisatie een sleutelrol moest spelen.”

De grote vraag was: waar moet die vernieuwing uit bestaan? Duidelijk was dat containertechnologie centraal moest staan. Tegelijkertijd was het ook van belang om van agile teams verder te evolueren naar een echte DevOps organisatie die volledig kan profiteren van gestandaardiseerde Continuous Integration/ Continuous Deployment (CI/CD) pipelines.

De keuze voor OpenShift

Florian Vorenkamp, software engineer bij Topicus, legt uit wat de overwegingen waren bij het kiezen van OpenShift. “Kubernetes is de meest populaire container orchestration tool en is een voor de hand liggende keuze geweest. We werkten al met Docker en Rancher maar dat was te vrijblijvend. We zochten naar een meer uniforme aanpak. Daardoor kwam OpenShift in beeld. Het biedt net wat meer dan ‘vanilla’ Kubernetes distributies, integreert met allerlei tooling inclusief subscriptions en er is uitgebreid support op, iets waarvoor je bij een andere Kubernetes distributie afhankelijk bent van de opensource community. Daarnaast biedt OpenShift voor allerlei frameworks en programmeertalen, zoals Java en .NET Core, out-of-the-box build opties waarmee je met minimale inspanning je applicatie kunt bouwen binnen het platform, en kun je het ook vanuit Azure of AWS draaien, iets dat ook een pluspunt is gezien onze ambities. Belangrijk was ook dat je een gestandaardiseerde CI/ CD pipeline kunt opzetten die door alle teams kan worden gebruikt. Zelfbouw is daarmee grotendeels verleden tijd.”

Daarnaast was de wens om DevOps verder de organisatie in te brengen een belangrijke prikkel om voor OpenShift te kiezen. Florian: “Je kunt DevOps alleen goed doen als je allemaal op dezelfde manier werkt. Je moet technologie hebben die die manier van werken ondersteunt: ook hier is standaardisatie en uniformiteit belangrijk. Dat klinkt misschien alsof je vrijheid moet inleveren als ontwikkelaar, maar dat heeft vooral betrekking op de vrijheid die je hebt om op je eigen manier software in productie te krijgen. Daar verlies je weinig aan want dat leverde in praktijk immers veel extra, onnodig werk op. Als je goede afspraken over je werkwijze maakt met elkaar, waarbij vanzelfsprekend ook Ops betrokken is, creëer je de randvoorwaarden waarbinnen je sneller en consistenter kunt ontwikkelen. Het is dus ook een organisatorische kwestie.”

Nieuwsgierig hoe Topicus dit heeft gerealiseerd? 
Lees hier de complete praktijkcase.


 
Laat een reactie achter