
Klantcase5 min lezen
Requirements erin, infrastructuur eruit: een managed service naar agentic development
Hoe een managed service provider zijn Azure-platform naar GitHub Enterprise en AI-agents verhuisde, en wat er veranderde in snelheid, kwaliteit en teamcapaciteit.
Eerder dit jaar hielpen we een managed service provider om de ontwikkeling van zijn kernplatform, de Infrastructure as Code (IaC) die de cloudinfrastructuur en workloads van klanten op Azure uitrolt en onderhoudt, van Azure DevOps naar GitHub Enterprise te verhuizen, en de manier van werken van het team opnieuw op te bouwen rond AI-agents. Teamleden leveren nu echte infrastructuurwijzigingen op door te beschrijven wat ze nodig hebben. Senior engineers houden de controle via review en goedkeuring. Dit is wat er veranderde.
Waar het begon
Het platform begon als een Azure DevOps-omgeving: infrastructuur geschreven in Terraform voor de managed-services-klanten, gevalideerd en uitgerold via CI/CD-pipelines in Azure DevOps. Het werkte, maar het schaalde mee met mensen, niet met de vraag. Eén senior engineer kon een beperkt aantal complexe taken tegelijk aan. De oplevering liep via honderden pipelinebestanden, de meeste klantspecifieke kopieën, zodat elke overkoepelende wijziging in al die bestanden herhaald moest worden. Bijdragen betekende Terraform kennen, de naamgevingsregels, de repositorystructuur en de logica erachter. De kennis zat in één hoofd.
De verhuizing
We brachten eerst de GitHub Enterprise zelf onder code, verhuisden daarna de repository van het platform met zijn volledige geschiedenis en migreerden alle pipelines in één week naar GitHub Actions. De honderden pipelinebestanden werden één herbruikbaar deployment-template dat vanuit configuratie uitwaaiert over elke klant en elke omgeving, plus een dunne workflow per feature. Een wijziging die vroeger in elke kopie werd aangepast, wordt nu één keer aangepast. Het onboarden van een klant werd een configuratiebestand, en dat bestand wordt door een AI-agent gemaakt op basis van een verzoek in gewone taal, ingediend als GitHub-issue.
Governance als code
Identiteiten, teams en rechten komen uit Microsoft Entra ID en worden door code aangemaakt. Branchbeveiliging is op organisatieniveau ingesteld en kan niet door een repositorybeheerder worden versoepeld: elke wijziging heeft een goedkeurende review nodig, en productie-implementaties gaan langs een menselijke goedkeuring. De regels zijn dezelfde voor een mens en voor een agent, en een mens houdt altijd de controle.
Eén regelboek voor mensen en agents
Het team houdt één centrale set instructies bij die elke agent oppakt voor elke taak die hij uitvoert: hoe de repository is ingedeeld, de naamgevingsconventies, welke tools te gebruiken, hoe een wijziging wordt getest en hoe een pull request wordt geschreven. Dezelfde regels draaien als checks op elke pull request en als hooks op de machine van elke ontwikkelaar, zodat een regel die ertoe doet wordt afgedwongen, en niet alleen opgeschreven.
Die vangrails maken het veilig voor minder ervaren collega’s om bij te dragen: de agent volgt het regelboek, de checks vangen op wat hij fout doet, en een senior engineer heeft het laatste woord.
De nieuwe manier van werken
Iedereen in het team beschrijft wat hij of zij nodig heeft als GitHub-issue, vaak opgesteld met GitHub Copilot, en wijst het toe aan een coding agent. De agent opent een pull request. De checks draaien. Een senior engineer reviewt, vraagt waar nodig om aanpassingen en keurt goed; de agent werkt verder in dezelfde pull request. De merge start de deployment, en productie wacht nog steeds op een menselijke goedkeuring. Niemand raakt in de eerste stap code aan.
De senior engineers gebruiken AI-assistenten interactief voor ontwerp, debugging, review en beheer, en dat werk landt als gereviewde pull requests, net als al het andere.
Wat er veranderde
- Snelheid. In de eerste maand na de verhuizing leverden de agents zelfstandig tientallen gemergde wijzigingen op, en dat zijn ze sindsdien blijven doen. Vandaag wordt ruwweg een derde van alle gemergde wijzigingen door agents geschreven, en de meeste worden na één reviewronde geaccepteerd.
- Doorlooptijd. Een goed beschreven verzoek gaat doorgaans binnen een dag van issue naar gemergde wijziging, met de deployment automatisch erachteraan, en veel van die verzoeken zijn dezelfde dag nog klaar.
- Complexiteit. Honderden pipelinebestanden werden één template. Opmaak, documentatie en statusrapportage worden door bots gedaan. Een mislukte nachtelijke deployment opent zijn eigen ticket in plaats van te wachten tot iemand het opmerkt. De senior engineers hadden dit allemaal zelf kunnen bouwen; wat AI veranderde is het tijdsbestek, met een oplevering binnen een termijn die geen menselijk team had kunnen halen.
- Kwaliteit. Elke wijziging, van een mens of een agent, doorloopt dezelfde checks en dezelfde review. De regels staan in de repository, en de audittrail loopt van verzoek tot productie.
- Teamcapaciteit. De engineer die vroeger het meeste van de code schreef, reviewt en beslist nu. De bijdrage van een tweede engineer groeide meer dan tienvoudig. Twee andere collega’s leveren wijzigingen op door ze te beschrijven. Het single point of failure is weg.
Wat het opleverde
Als schatting vertegenwoordigen alleen al de door agents geschreven wijzigingen ruwweg twee tot drie engineer-maanden in de eerste acht maanden, na aftrek van de reviewtijd die ze nodig hebben. De grotere winst is lastiger te tellen: seniortijd die naar ontwerp en review gaat in plaats van naar routinewijzigingen, en een backlog die niet langer op één persoon wacht.
Wat we leerden
- Agents hebben afdwingbare regels nodig, geen proza. Elke richtlijn die ertoe deed, werd een check.
- De kwaliteit van het verzoek bepaalt de kwaliteit van het resultaat. Acceptatiecriteria schrijven is de nieuwe kernvaardigheid.
- Review is waar senioriteit zich uitbetaalt. Het team zette zijn beste mensen op het punt met de meeste hefboomwerking.
We geven zelf het voorbeeld
Onze eigen infrastructuur, documentatie, website en GitHub-organisatie draaien op dezelfde manier: verzoeken worden issues, agents doen het werk, elke wijziging is een gereviewde pull request achter geautomatiseerde checks, en een beslissingenlogboek en runbooks bewaren de audittrail. De pagina die je nu leest, is zo gemaakt.
AI vervangt senioriteit niet, en sluit die ook niet uit. Het vermenigvuldigt wat een team kan opleveren wanneer de regels helder zijn en de senior engineers het laatste woord houden. Bekijk wat we bieden in AI en agentic development en teamtraining en enablement.
