Iedere ontwikkelaar heeft nu toegang tot AI-codeerassistenten. De tools zelf leveren weinig voordeel op. Teams leveren sneller met AI wanneer de tool in het werkproces is geïntegreerd: hoe u hem configureert, welke context u aanlevert, en waar u de grens trekt tussen AI-autonomie en menselijk oordeel.
Bij webvise is AI verankerd in elke fase van het ontwikkelproces. Dat verwijdert wrijving zodat engineeringtijd terechtkomt bij architectuur, ontwerpbeslissingen en bedrijfslogica, in plaats van bij boilerplate, repetitief refactoren en handmatige reviewchecklists.
Planning: verkennen voor u vastlegt
Complexe taken, zoals library-migraties, architectuurwijzigingen en features die tientallen bestanden raken, beginnen in planmodus. Vóór er ook maar één regel code wordt geschreven, verkent de AI de codebase, brengt afhankelijkheden in kaart en stelt een implementatieaanpak voor. Dat is fundamenteel anders dan de AI een taak geven en hopen dat de uitvoer klopt.
Planmodus is waardevol omdat de kosten van herwerk bij grote wijzigingen hoog zijn. Een microservice-herstructurering die onverwachte afhankelijkheden ontdekt nadat de helft van de code al is geschreven, kost dagen. Door de AI eerst de volledige afhankelijkheidsgraph te laten uitwerken en daarna servicegrenzen te laten voorstellen, worden die problemen gevonden voordat ook maar één regel verandert.
Bij goed afgebakende wijzigingen, een bugfix in één bestand of het toevoegen van een validatiecheck, sla ik de planmodus volledig over en ga ik direct aan de slag. De kern is de aanpak afstemmen op de complexiteit: planning voor architectuurbeslissingen, directe uitvoering voor heldere taken.
Projectconfiguratie: de AI uw standaarden aanleren
Het meest impactvolle wat u met een AI-codeerassistent kunt doen, is de juiste context aanleveren. Gestructureerde configuratiebestanden vertellen de AI de coderingsnormen, testconventies, API-patronen en deploymentvereisten. Deze context wordt automatisch geladen voor elke sessie.
Niet alle context is echter altijd relevant. API-conventies laden bij het bewerken van een React-component verspilt tokens en kan de AI verwarren. Ik gebruik padspecifieke regels met glob-patronen: regels die alleen activeren bij het bewerken van overeenkomende bestanden. Testconventies laden voor `/*.test.tsx`-bestanden. API-patronen laden voor `src/api//*`. Databaseconventies laden voor migratiebestanden.
Deze aanpak vermindert ruis en verbetert de uitvoerkwaliteit. De AI genereert code die aansluit op de vastgestelde normen, omdat die normen bekend zijn en alleen de normen relevant voor het bestand in kwestie worden geladen.
Ontwikkeling: iteratieve verfijning boven eenmalige generatie
De grootste fout die teams maken met AI-coderingstools is ze behandelen als eenmalige generatoren. U beschrijft wat u wilt, de AI produceert code, en u accepteert die of begint opnieuw. Deze aanpak presteert consequent slechter dan iteratieve verfijning.
Mijn werkwijze is testgedreven: eerst schrijf ik de testsuite, inclusief verwacht gedrag, randgevallen en prestatievereisten, en daarna implementeert de AI tegen die tests. Bij falende tests deel ik de specifieke fouten, waarna de AI zijn implementatie corrigeert. Elke iteratie verkleint de kloof tussen uitvoer en vereiste.
Bij onduidelijke vereisten gebruik ik het interviewpatroon: in plaats van direct te implementeren, laat ik de AI eerst verduidelijkende vragen stellen. Zo komen overwegingen naar boven die de ontwikkelaar misschien niet had voorzien, zoals cache-invalidatiestrategieën, faalscenario's en concurrentieproblemen. Twee minuten vragen kan twee uur herwerk voorkomen.
- Concrete voorbeelden verslaan proza. Wanneer natuurlijke taal inconsistente resultaten geeft, verduidelijken 2-3 invoer/uitvoer-voorbeelden de vereiste direct.
- Samenhangende problemen gaan in één bericht. Wanneer meerdere fixes elkaar beïnvloeden, lever ze samen aan zodat de AI de interacties meeneemt.
- Onafhankelijke problemen gaan sequentieel. Los niet-gerelateerde problemen één voor één op met gerichte feedback.
Code review: onafhankelijke passes vangen meer bugs
AI-gegenereerde code heeft nog steeds review nodig. Een patroon dat nadere beschouwing verdient: de dezelfde AI-sessie die de code schreef, laten reviewen. Dat presteert doorgaans slechter dan onafhankelijke review, omdat het model zijn redeneercontext behoudt en zijn eigen beslissingen minder snel ter discussie stelt.
Ik gebruik onafhankelijke reviewinstanties: een nieuwe AI-sessie zonder voorafgaande redeneercontext uit de generatiefase. Dit tweede paar ogen vangt subtiele problemen op die zelfbeoordeling mist. Bij grote pull requests die veel bestanden raken, splits ik reviews op in bestandsspecifieke analysepasses voor lokale problemen, plus een aparte integratiepas die bestandsoverschrijdende datastromen onderzoekt.
Reviewprompts zijn specifiek over wat te zoeken. Vage instructies als "controleer of de code correct is" leveren onbetrouwbare resultaten op. Expliciete criteria, zoals "markeer logicafouten en beveiligingsproblemen, sla kleine stijlverschillen over", verminderen fout-positieven en bouwen het vertrouwen van ontwikkelaars in het reviewproces op.
CI/CD-integratie: AI in de pipeline
AI-review draait automatisch op elke pull request als onderdeel van de CI-pipeline. De AI analyseert wijzigingen, produceert gestructureerde bevindingen met bestandslocatie, probleembeschrijving, ernst en suggestie voor een oplossing, en plaatst ze als inline PR-opmerkingen. Gestructureerde uitvoer zorgt ervoor dat bevindingen machineleesbaar zijn en kunnen worden geïntegreerd in bestaande code-reviewdashboards.
Twee details maken dit in de praktijk werkbaar. Ten eerste worden bij herhaalde reviews na nieuwe commits de eerdere bevindingen meegenomen in de context, zodat de AI alleen nieuwe of nog niet opgeloste problemen rapporteert en geen duplicaatopmerkingen plaatst die het vertrouwen ondermijnen. Ten tweede worden bestaande testbestanden meegenomen in de context, zodat testgeneratie scenario's vermijdt die al door de testsuite worden gedekt.
Contextbeheer: de vaardigheid die het werkproces verankert
Elke techniek hierboven staat of valt met effectief contextbeheer. AI-modellen hebben eindige contextvensters, en hoe u dat venster vult, bepaalt de uitvoerkwaliteit. Enkele principes die consequent worden toegepast:
- Incrementele verkenning. Begin met gerichte zoekopdrachten om ingangspunten te vinden, volg daarna imports en trace flows: laad niet alle bestanden tegelijk.
- Delegatie aan subagenten. Uitgebreide ontdekkingstaken draaien in geïsoleerde subcontexten die samenvattingen teruggeven, zodat het hoofdgesprek gefocust blijft.
- Gestructureerde statusopslag. Belangrijke bevindingen worden naar notitiebestanden geschreven en in latere queries gerefereerd, wat contextdegradatie in lange sessies tegengaat.
- Contextcompactie. Wanneer de context volloopt met uitgebreide verkenningsuitvoer, wordt die gecompacteerd: een samenvatting van wat is geleerd, voor verdere voortzetting.
De resultaten
Dit werkproces draagt bij aan hoe productie-klare applicaties doorgaans worden opgeleverd in weken in plaats van maanden voor de projectscopes die worden geaccepteerd; de uitkomsten schalen met de projectcomplexiteit. AI neemt het volumewerk op zich, boilerplate-generatie, het schrijven van tests, code review en documentatie, terwijl de focus ligt op beslissingen die menselijk oordeel vereisen: architectuur, gebruikerservaring, bedrijfslogica en kwaliteitsnormen.
Het resultaat is consistentere kwaliteit op snelheid. Elke pull request krijgt een grondige review. Elke feature krijgt uitgebreide tests. Elk component volgt gevestigde conventies. AI-tooling raakt niet vermoeid, snijdt geen hoeken af onder tijdsdruk en vergeet geen context, al vereist het zorgvuldige prompting en review.
Bouwt u een product en zoekt u een partner die moderne AI-gestuurde werkwijzen combineert met ervaren engineeringoordeel? Neem contact op. Het doel is snel opleveren zonder in te leveren op kwaliteit, en het proces wordt u graag uitgelegd.
De werkwijzen van webvise zijn afgestemd op de ISO 27001- en ISO 42001-normen.