[{"data":1,"prerenderedAt":1980},["ShallowReactive",2],{"footer-vacatures-nl":3,"hub-vastgelopen-met-ai-nl":4,"content-by-keys-offers-nl-vibe-code-rescue-audit,rescue-sprint,build-integrate":86,"content-by-keys-useCases-nl-vibe-coded-app-professionaliseren,ai-prototype-naar-productie,ai-agent-niet-betrouwbaar,gegenereerde-code-niet-meer-begrijpelijk,ai-code-breekt-steeds,vast-op-auth-database-of-rechten,ai-koppelen-aan-bestaande-systemen,security-en-privacy-ai-oplossing,ai-oplossing-te-langzaam,ai-oplossing-te-duur,tests-evals-monitoring-voor-ai,developmentteam-loopt-vast-met-ai,technische-second-opinion-ai,ai-project-overnemen-van-andere-leverancier,ai-experiment-heeft-echte-gebruikers,prototype-naar-onderhoudbaar-softwareproduct,weg-bij-ai-platform-of-leverancier,vibe-code-project-vastgelopen":471,"content-by-keys-buyerTriggers-nl-starten-met-ai,ai-laten-bouwen":1842,"content-by-keys-cases-nl-":1959,"why-9to5-nl":1960},[],{"id":5,"title":6,"approach":7,"body":22,"cta":29,"description":26,"extension":32,"hero":33,"key":35,"label":36,"meta":37,"navigation":38,"path":39,"proof":40,"relations":52,"seo":77,"stem":80,"summary":81,"visuals":82,"__hash__":85},"buyerTriggers_nl\u002Fbuyer-triggers\u002Fvastgelopen-met-ai.md","We hebben al iets, maar zitten vast.",{"title":8,"steps":9},"Wij stappen in, begrijpen, repareren en dragen over.",[10,13,16,19],{"title":11,"text":12},"Rescue-doel bevestigen","We bepalen wat er werkelijk misgaat, wat urgent is en wat na de rescue aantoonbaar beter moet zijn.\n",{"title":14,"text":15},"Context en code begrijpen","We lezen de code, architectuur, dataflows, integraties en deployment totdat duidelijk is waar het probleem vandaan komt.\n",{"title":17,"text":18},"Oplossen en testen","We repareren gericht, voegen waar nodig tests, evals en guardrails toe en controleren of de oplossing ook onder echte omstandigheden werkt.\n",{"title":20,"text":21},"Documenteren en overdragen","We leggen keuzes vast, ruimen kritieke technische schuld op en zorgen dat jullie team weer zelfstandig verder kan.\n",{"type":23,"value":24,"toc":25},"minimark",[],{"title":26,"searchDepth":27,"depth":27,"links":28},"",2,[],{"title":30,"body":31},"Zit je vast met AI of vibe-coded software?","Leg kort uit wat er staat en waar het misgaat. Wij kijken ernaar en zeggen snel wat verstandig is om te repareren, te behouden of opnieuw neer te zetten.\n","md",{"intro":34},"Je hoeft niet opnieuw te beginnen omdat het ingewikkeld is geworden. Wij stappen in, ook bij een vibe-coded app of door AI-tools als Claude Code, Codex of Cursor gegenereerde code, begrijpen wat er staat, vinden waar het echt misgaat en maken het weer technisch beheersbaar.\n","vastgelopen-met-ai","Vastgelopen met AI",{},true,"\u002Fbuyer-triggers\u002Fvastgelopen-met-ai",{"intro":41,"points":42},"Een bestaande codebase beoordelen vraagt meer dan een automatische quality score. Het vraagt senior engineers die zien welke problemen echt pijn doen en die gericht kunnen repareren.\n",[43,46,49],{"title":44,"text":45},"We werken juist in bestaande software","Een rommelige of AI-gegenereerde codebase is geen reden om automatisch opnieuw te beginnen.\n",{"title":47,"text":48},"Software engineering én AI","We kijken naar gewone productieproblemen en naar AI-specifieke failure modes, zoals onbetrouwbare output en ontbrekende evals.\n",{"title":50,"text":51},"Daarna weer zelfstandig verder","We documenteren keuzes en ruimen kritieke technische schuld op, zodat jullie team weer zelf verder kan.\n",{"useCaseKeys":53,"offerKeys":72,"caseKeys":76},[54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71],"vibe-coded-app-professionaliseren","ai-prototype-naar-productie","ai-agent-niet-betrouwbaar","gegenereerde-code-niet-meer-begrijpelijk","ai-code-breekt-steeds","vast-op-auth-database-of-rechten","ai-koppelen-aan-bestaande-systemen","security-en-privacy-ai-oplossing","ai-oplossing-te-langzaam","ai-oplossing-te-duur","tests-evals-monitoring-voor-ai","developmentteam-loopt-vast-met-ai","technische-second-opinion-ai","ai-project-overnemen-van-andere-leverancier","ai-experiment-heeft-echte-gebruikers","prototype-naar-onderhoudbaar-softwareproduct","weg-bij-ai-platform-of-leverancier","vibe-code-project-vastgelopen",[73,74,75],"vibe-code-rescue-audit","rescue-sprint","build-integrate",[],{"title":78,"description":79},"Vastgelopen met AI? Rescue door senior engineers | 9to5 software","Vast met een AI-agent, prototype of vibe-coded app (Lovable, Cursor, Bolt, Replit)? We analyseren wat misgaat, repareren gericht en maken het onderhoudbaar.\n","buyer-triggers\u002Fvastgelopen-met-ai","Er staat al iets, maar het is onbetrouwbaar, onbegrijpelijk of technisch vastgelopen. We moeten het weer beheersbaar krijgen.\n",{"hero":83,"proof":84,"approach":84},"sq-tangle-knot","ls-rescue-repair","5RWUrYr18bttn78qLfKP0lXDzaVNG7A5bCQ-IaKfD_A",[87,213,329],{"id":88,"title":89,"body":90,"catalogue":94,"cta":95,"description":26,"extension":32,"fit":100,"hero":104,"key":73,"meta":107,"navigation":38,"next":108,"outcome":120,"path":132,"price":133,"process":136,"proof":150,"relations":161,"scope":166,"seo":199,"stem":202,"summary":203,"summaryPanel":204,"visuals":209,"__hash__":212},"offers_nl\u002Foffers\u002Fvibe-code-rescue-audit.md","Vibe Code Rescue Audit",{"type":23,"value":91,"toc":92},[],{"title":26,"searchDepth":27,"depth":27,"links":93},[],null,{"title":96,"body":97,"primaryCta":98,"local":99},"Geen idee meer wat je moet fixen?","Laat ons eerst uitzoeken wat je daadwerkelijk hebt. Daarna kun je een technische beslissing nemen zonder blind door te prompten of alles weg te gooien.\n","Boek een Rescue Audit","Vibe Code Rescue door senior engineers vanuit Delft, voor teams in Delft, Den Haag, Rotterdam en omgeving.\n",{"title":101,"intro":102,"useCaseKeys":103},"Wanneer past dit aanbod?","Als je voelt dat het technisch niet goed zit, maar de werkelijke oorzaak of omvang nog niet duidelijk is.\n",[54,56,57,71],{"headline":105,"intro":106,"primaryCta":98},"Weet wat er echt mis is voordat je alles opnieuw bouwt.","Je hebt al software, maar weet niet meer welke problemen oppervlakkig zijn en welke structureel. Wij reconstrueren hoe het systeem werkt, scheiden technische schuld van echte risico's en geven je een geprioriteerde route vooruit.\n",{},{"title":109,"items":110},"Wat gebeurt er daarna?",[111,114,117],{"title":112,"text":113,"offerKey":74},"Een duidelijk rescue-doel?","Dan kunnen we het gericht aanpakken in een Rescue Sprint.\n",{"title":115,"text":116,"offerKey":75},"Blijkt het een groter bouwproject?","Dan scopen we Build & Integrate als vaste opdracht.\n",{"title":118,"text":119},"Blijkt er weinig mis?","Dan krijg je dat ook gewoon te horen. Een vervolg is niet verplicht.\n",{"title":121,"items":122},"Na afloop heb je...",[123,126,129],{"title":124,"text":125},"Technische grip op wat er staat","Architectuur, belangrijkste afhankelijkheden en kritieke risico's zijn weer inzichtelijk.\n",{"title":127,"text":128},"Een geprioriteerd rescueplan","Je weet wat prima kan blijven, wat echt moet veranderen en in welke volgorde.\n",{"title":130,"text":131},"Een besluit over de vervolgaanpak","Fixen, gedeeltelijk herbouwen, groter doorontwikkelen of niets doen wordt een bewuste keuze.\n","\u002Foffers\u002Fvibe-code-rescue-audit",{"label":134,"type":135},"€2.950 excl. btw","fixed",{"title":137,"steps":138},"Zo werkt het.",[139,141,144,147],{"title":11,"text":140},"We bepalen welke vragen de Audit moet beantwoorden en waar de grootste onzekerheid zit.\n",{"title":142,"text":143},"Code + systeem reconstrueren","We lezen architectuur, code, deployment, dataflows en relevante afhankelijkheden.\n",{"title":145,"text":146},"Problemen prioriteren","We onderscheiden cosmetische schuld, ontwikkelblokkades en echte productie- of securityrisico's.\n",{"title":148,"text":149},"Rescueplan + debrief","Je krijgt een concrete route met wat kan blijven, wat moet veranderen en wat daarna logisch is.\n",{"title":151,"intro":152,"points":153,"caseKeys":160},"Waarom moet je dit geloven?","Een bestaande codebase beoordelen vraagt meer dan een automatische quality score. Het vraagt senior engineers die kunnen zien welke problemen daadwerkelijk pijn doen.\n",[154,155,157],{"title":44,"text":45},{"title":47,"text":156},"We bekijken zowel gewone production-grade problemen als AI-specifieke failure modes.\n",{"title":158,"text":159},"Vervolgwerk is geen voorwaarde","Als de beste conclusie is dat je huidige route prima is, mag het traject daar eindigen.\n",[],{"buyerTriggerKeys":162,"useCaseKeys":163,"relatedOfferKeys":164,"caseKeys":165},[35],[54,55,56,57,58,61,62,63,66,67,68,69,70,71],[74,75],[],{"title":167,"intro":168,"activities":169,"deliverables":181,"exclusions":192},"Wat zit er in dit aanbod?","Een technische diagnose van één bestaande applicatie of codebase, gericht op besluitvorming.\n",{"intro":170,"items":171},"We onderzoeken breed genoeg om structurele oorzaken te vinden, maar zonder er een theoretische code-review van te maken.\n",[172,173,174,175,176,177,178,179,180],"Architectuur en codekwaliteit onderzoeken","Dependencies en technische schuld beoordelen","Authentication en autorisatie bekijken","Datalaag en relevante integraties onderzoeken","Deployment en foutafhandeling beoordelen","Tests, logging en monitoring bekijken","Securityrisico's op hoofdlijnen inventariseren","AI-specifieke failure modes onderzoeken","Maintainability en lock-in beoordelen",{"intro":182,"items":183},"Je krijgt een technisch oordeel waar je daadwerkelijk een vervolg op kunt baseren.\n",[184,185,186,187,188,189,190,191],"Architectuuroverzicht","Geprioriteerde probleem- en risicolijst","Wat kan blijven","Wat moet worden aangepast","Wat eventueel opnieuw moet","Advies: fix \u002F partially rebuild \u002F rebuild","Voorgestelde volgorde en omvang van vervolg","Technische debrief met senior engineer",{"intro":193,"items":194},"De Audit levert begrip en een plan. Grote fixes worden niet stilletjes onderdeel van de analyse.\n",[195,196,197,198],"Volledige reparatie van de codebase","Complete rewrite","Onbegrensde pentest of formele security-audit","Productontwikkeling buiten kleine diagnostische wijzigingen",{"title":200,"description":201},"Vibe Code Rescue Audit | Vastgelopen met AI-code | 9to5 software","Vibe-coded app (Lovable, Cursor, Bolt, Replit) of AI-project vastgelopen? 9to5 onderzoekt architectuur, code, security, tests en deployment en geeft een rescueplan.\n","offers\u002Fvibe-code-rescue-audit","We onderzoeken wat je hebt, wat prima kan blijven, waar de echte risico's zitten en hoe je weer verantwoord verder kunt.\n",{"qualifier":205,"result":206,"duration":207,"nextStep":208},"Vaste prijs · één bestaande applicatie of codebase","Technische grip op wat er staat en een geprioriteerd rescueplan","Circa twee weken","Een Rescue Sprint voor het belangrijkste probleem, of zelf verder",{"hero":83,"proof":210,"process":211},"sq-orient-options","ls-route-converge","UjuKAihf8tDHNo9cRdweAUPc4Fq7PPeW-wynNvGAB-I",{"id":214,"title":215,"body":216,"catalogue":94,"cta":220,"description":26,"extension":32,"fit":225,"hero":228,"key":74,"meta":231,"navigation":38,"next":232,"outcome":243,"path":254,"price":255,"process":258,"proof":271,"relations":284,"scope":289,"seo":316,"stem":319,"summary":320,"summaryPanel":321,"visuals":326,"__hash__":328},"offers_nl\u002Foffers\u002Frescue-sprint.md","Rescue Sprint",{"type":23,"value":217,"toc":218},[],{"title":26,"searchDepth":27,"depth":27,"links":219},[],{"title":221,"body":222,"primaryCta":223,"local":224},"Weet je wat er stuk is?","Leg het technische probleem aan ons voor. Als het scherp genoeg is, hoeven we er geen extra audit tussen te verkopen.\n","Plan een Rescue Sprint","Tijdelijke senior engineering vanuit Delft, inzetbaar voor technische AI- en softwareproblemen in de regio.\n",{"title":101,"intro":226,"useCaseKeys":227},"Als het technische probleem scherp genoeg is om direct te repareren.\n",[59,60,64,65],{"headline":229,"intro":230,"primaryCta":223},"Eén duidelijk technisch probleem. Eén week senior engineering.","Je weet waar het probleem zit, maar je team krijgt het niet opgelost of mist precies de specialistische ervaring die nu nodig is. Wij stappen gericht in, repareren het moeilijke stuk en zorgen dat jullie daarna weer verder kunnen.\n",{},{"title":109,"items":233},[234,237,240],{"title":235,"text":236},"Klaar? Dan gaan wij weg.","Als jullie zelfstandig verder kunnen, is de Sprint geslaagd.\n",{"title":238,"text":239,"offerKey":74},"Nog een duidelijk rescue-doel?","Dan kun je een volgende Sprint als nieuwe vaste scope inzetten.\n",{"title":241,"text":242,"offerKey":75},"Blijkt het groter dan een Sprint?","Dan scopen we Build & Integrate. Is de oorzaak toch onduidelijk, dan past eerst de Rescue Audit.\n",{"title":121,"items":244},[245,248,251],{"title":246,"text":247},"Het concrete probleem is aangepakt","De afgesproken technische blokkade is opgelost of aantoonbaar verder gebracht.\n",{"title":249,"text":250},"De wijziging is professioneel neergezet","Waar nodig voegen we tests, evals, guardrails of productie-randvoorwaarden toe.\n",{"title":252,"text":253},"Je team kan weer verder","Code, keuzes en vervolg zijn gedocumenteerd en technisch overgedragen.\n","\u002Foffers\u002Frescue-sprint",{"label":256,"suffix":257,"type":135},"€5.950 excl. btw","per Sprint",{"title":137,"steps":259},[260,262,265,268],{"title":11,"text":261},"We checken of het probleem scherp genoeg is voor een Sprint.\n",{"title":263,"text":264},"Context + code begrijpen","We lezen precies genoeg om verantwoord in te grijpen.\n",{"title":266,"text":267},"Oplossen + testen","We implementeren de fix en voegen de benodigde kwaliteitslaag toe.\n",{"title":269,"text":270},"Documenteren + overdragen","We leggen keuzes vast en zorgen dat jullie team weer zelfstandig verder kan.\n",{"title":151,"intro":272,"points":273,"caseKeys":283},"Dit is precies het soort werk waarvoor senior engineers waardevol zijn: snel een onbekende codebase begrijpen, het moeilijke stuk oplossen en weer vertrekken.\n",[274,277,280],{"title":275,"text":276},"Senior AI + software engineers","We stappen in waar het ingewikkeld wordt en vertrekken als het klaar is.\n",{"title":278,"text":279},"We werken in wat er al staat","We verwachten niet dat je eerst alles naar onze favoriete stack migreert.\n",{"title":281,"text":282},"Van jullie zodra het staat","We documenteren, dragen over en vertrekken zodra jullie zelfstandig verder kunnen.\n",[],{"buyerTriggerKeys":285,"useCaseKeys":286,"relatedOfferKeys":287,"caseKeys":288},[35],[59,60,64,65],[73,75],[],{"title":167,"intro":290,"activities":291,"deliverables":300,"exclusions":309},"Eén Sprint heeft één duidelijk rescue-doel. Die begrenzing houdt het snel en eerlijk.\n",{"intro":292,"items":293},"We doen wat technisch nodig is om het afgesproken probleem verantwoord aan te pakken.\n",[294,295,296,297,298,299],"Relevante code en context begrijpen","Hoofdoorzaak reproduceren en bevestigen","Gerichte fix of technische verbetering implementeren","Relevante tests, evals of checks toevoegen","Integratie, deployment of data aanpassen waar dat binnen het doel nodig is","Technische keuzes vastleggen en overdragen",{"intro":301,"items":302},"Werkende engineering in de bestaande codebase, geen adviesdocument dat iemand anders nog moet uitvoeren.\n",[303,304,305,306,307,308],"Geïmplementeerde technische wijziging","Relevante tests of kwaliteitschecks","Werkende code in de afgesproken omgeving","Documentatie van belangrijke keuzes","Handover aan het eigen team","Duidelijkheid over eventueel resterend vervolg",{"intro":310,"items":311},"Een Sprint is afgebakend en wordt niet vanzelf een open project.\n",[312,313,314,315],"Meerdere losstaande rescue-doelen tegelijk","Onbegrensde refactor van de hele codebase","Grote nieuwe productfeatures buiten het rescue-doel","Automatische verlenging of retainer",{"title":317,"description":318},"Rescue Sprint | Senior AI & software engineering | 9to5 software","Eén week senior engineering voor een technische blokkade in AI, een AI-agent of vibe-coded software. Repareren, testen, documenteren en overdragen, €5.950 excl. btw.\n","offers\u002Frescue-sprint","Eén week senior engineering gericht op één duidelijk technisch rescue-doel. Zonder retainer en zonder eindeloos traject.\n",{"qualifier":322,"result":323,"duration":324,"nextStep":325},"Per Sprint · één duidelijk rescue-doel","De afgesproken technische blokkade opgelost, getest en overgedragen","Eén week","Jullie nemen het over, of een volgende Sprint voor een nieuw doel",{"hero":83,"proof":327,"process":84},"sq-guardrails-check","gRT8a4vsoB0RXGLaPdiiEFl8C_da9ls2xSKt9d0Be2A",{"id":330,"title":331,"body":332,"catalogue":336,"cta":347,"description":26,"extension":32,"fit":352,"hero":359,"key":75,"meta":362,"navigation":38,"next":363,"outcome":375,"path":386,"price":387,"process":390,"proof":404,"relations":417,"scope":428,"seo":457,"stem":460,"summary":461,"summaryPanel":462,"visuals":467,"__hash__":470},"offers_nl\u002Foffers\u002Fbuild-integrate.md","Build & Integrate",{"type":23,"value":333,"toc":334},[],{"title":26,"searchDepth":27,"depth":27,"links":335},[],{"audience":337,"promise":338,"deliverables":339,"note":345,"visual":346},"Voor organisaties die weten wat er moet komen en willen dat 9to5 het professioneel bouwt en integreert.\n","Geen AI-demo, maar iets dat met je echte software, data, processen en mensen werkt.\n",[340,341,342,343,344],"Architectuur en productie-ready implementatie","Koppelingen met bestaande software en data","Rechten, foutafhandeling en human-in-the-loop","Tests, monitoring en deployment waar relevant","Documentatie en overdracht aan het eigen team","Eerst bepalen we samen de scope, daarna spreken we een vaste prijs af voor het resultaat.\n","ls-system-connect",{"title":348,"body":349,"primaryCta":350,"local":351},"Weet je wat er gebouwd moet worden?","Leg ons de gewenste uitkomst en je bestaande technische context voor. Als de scope duidelijk is, maken we er een vaste opdracht van.\n","Bespreek je bouwvraag","AI engineering en software-implementatie vanuit Delft, voor organisaties in Delft, Den Haag, Rotterdam en omgeving.\n",{"title":101,"intro":353,"useCaseKeys":354},"Als de gewenste uitkomst duidelijk genoeg is om een professionele implementatie te scopen.\n",[355,356,357,358],"ai-agent-laten-bouwen","interne-ai-assistent-laten-ontwikkelen","bedrijfsproces-automatiseren-met-ai","ai-toevoegen-aan-bestaande-software",{"headline":360,"intro":361,"primaryCta":350},"Geen AI-demo, maar iets dat met je echte software, data en mensen werkt.","Het probleem en de gewenste richting zijn duidelijk. Nu moet het goed gebouwd worden. Wij pakken architectuur, AI, integraties en production-grade engineering als één geheel aan en dragen het daarna weer over.\n",{},{"title":109,"items":364},[365,368,371],{"title":366,"text":367},"Jullie nemen het over","Daar werken we naartoe. We willen niet dat je ons blijft nodig hebben.\n",{"title":369,"text":370},"Er ontstaat later een nieuw afgebakend vraagstuk","Dan scopen we dat opnieuw in plaats van automatisch capaciteit door te laten lopen.\n",{"title":372,"text":373,"offerKey":374},"Eerst nog te veel technische onzekerheid?","Dan kan een AI Prototype Sprint of Reality Check vóór Build & Integrate verstandiger zijn.\n","ai-prototype-sprint",{"title":121,"items":376},[377,380,383],{"title":378,"text":379},"Werkende software in plaats van een demo","De afgesproken functionaliteit werkt end-to-end binnen de echte technische omgeving.\n",{"title":381,"text":382},"Betrouwbare integratie met wat er al is","Data, systemen, rechten en menselijke processen zijn onderdeel van de oplossing.\n",{"title":384,"text":385},"Een overdraagbaar product","Architectuur, code en belangrijke keuzes zijn voldoende gedocumenteerd om zelfstandig verder te gaan.\n","\u002Foffers\u002Fbuild-integrate",{"label":388,"type":389},"Vaste prijs na scope","scoped",{"title":137,"steps":391},[392,395,398,401],{"title":393,"text":394},"Scope + succescriteria","We maken exact genoeg wat er moet werken om verantwoordelijkheid en prijs af te spreken.\n",{"title":396,"text":397},"Architectuur + integraties","We bepalen hoe AI, data, bestaande software, rechten en gebruikers samenkomen.\n",{"title":399,"text":400},"Bouwen + testen","We implementeren het moeilijke stuk en testen ook fouten, edge cases en betrouwbaarheid.\n",{"title":402,"text":403},"Live + overdragen","We brengen de oplossing gecontroleerd naar productie, documenteren en dragen hem over.\n",{"title":151,"intro":405,"points":406,"caseKeys":416},"AI wordt pas echt waardevol wanneer het samenwerkt met bestaande software, data en bedrijfsprocessen. Dat is gewoon serieuze software engineering.\n",[407,410,413],{"title":408,"text":409},"Dezelfde mensen adviseren en bouwen","Advies en uitvoering zitten bij dezelfde technische mensen.\n",{"title":411,"text":412},"Integraties zijn kernwerk","API's, databases, auth en bestaande systemen behandelen we niet als bijzaak rond de AI.\n",{"title":414,"text":415},"Productie en overdracht horen erbij","Het werk is niet klaar wanneer de demo werkt, maar wanneer de oplossing beheersbaar is.\n",[],{"buyerTriggerKeys":418,"useCaseKeys":420,"relatedOfferKeys":425,"caseKeys":427},[419,35],"ai-laten-bouwen",[355,356,357,358,421,422,423,424],"eigen-data-en-kennis-gebruiken-met-ai","documenten-en-mails-automatisch-verwerken","agentic-workflows-bestaande-software","tools-vervangen-door-maatwerkflow",[426,374,73,74],"ai-reality-check",[],{"title":167,"intro":429,"activities":430,"deliverables":441,"exclusions":450},"De scope wordt vooraf bepaald. Daarna krijg je een vaste prijs voor het afgesproken resultaat.\n",{"intro":431,"items":432},"De precieze werkzaamheden verschillen per opdracht, maar we nemen verantwoordelijkheid voor het complete technische resultaat.\n",[433,434,435,436,437,438,439,440],"Scope en succescriteria concreet maken","Architectuur ontwerpen","AI-functionaliteit of agentflow implementeren","Integraties met bestaande software en data bouwen","Authentication, autorisatie en dataflows goed neerzetten","Tests, evals, monitoring en foutafhandeling waar relevant","Deployment en productie-inrichting","Documentatie en technische overdracht",{"intro":442,"items":443},"De deliverables worden per scope vastgelegd en zijn onderdeel van de vaste prijs.\n",[444,445,446,447,448,449],"Werkende afgesproken functionaliteit","Productiegeschikte implementatie","Benodigde integraties","Relevante tests en kwaliteitschecks","Technische documentatie","Deployment en handover volgens scope",{"intro":451,"items":452},"Geen onbegrensde consultancy en geen featurelijst die achteraf groeit.\n",[453,454,455,456],"Functionaliteit buiten de afgesproken scope","Doorlopende retainer als standaardonderdeel","Externe model-, API- en hostingkosten","Meerwerk zonder nieuwe expliciete scope en prijs",{"title":458,"description":459},"AI laten bouwen en integreren | Build & Integrate | 9to5 software","Laat een AI-agent, interne tool, MCP-koppeling of AI-functionaliteit met Claude of ChatGPT\u002FOpenAI professioneel bouwen en integreren met je software, data en processen.\n","offers\u002Fbuild-integrate","Je weet wat er moet komen. Wij bouwen het professioneel, koppelen het aan je bestaande software en zorgen dat het productieklaar overdraagbaar wordt.\n",{"qualifier":463,"result":464,"duration":465,"nextStep":466},"Vaste prijs na een gezamenlijke scope","Werkende, geïntegreerde software die jullie zelf kunnen overnemen","Vastgelegd in de scope","Overdracht aan jullie team, of samen doorontwikkelen",{"hero":468,"proof":469,"process":346},"sq-connect-nodes","sq-foundation-build","7Ot010PTr7AHb4q1qE5KZH8_I-rebqm1q6pkj5svELc",[472,546,623,700,776,852,928,1004,1080,1158,1234,1311,1387,1463,1539,1615,1691,1766],{"id":473,"title":474,"body":475,"description":26,"desiredOutcome":479,"extension":32,"hero":491,"key":54,"meta":493,"navigation":38,"path":494,"problem":495,"proof":507,"recognition":517,"recommendedApproach":532,"relations":534,"seo":539,"stem":542,"summary":543,"visuals":544,"__hash__":545},"useCases_nl\u002Fuse-cases\u002Fvibe-coded-app-professionaliseren.md","Onze vibe-coded app moet professioneel worden",{"type":23,"value":476,"toc":477},[],{"title":26,"searchDepth":27,"depth":27,"links":478},[],{"intro":480,"items":481},"Je wilt de snelheid van AI-assisted development behouden, zonder dat je product technisch steeds kwetsbaarder wordt.\n",[482,485,488],{"title":483,"text":484},"Een betrouwbare technische basis","Architectuur, data, authentication, deployment en foutafhandeling zijn logisch genoeg opgezet voor serieus gebruik.\n",{"title":486,"text":487},"Veilig kunnen blijven veranderen","Nieuwe features hoeven niet telkens onverwacht bestaande functionaliteit kapot te maken.\n",{"title":489,"text":490},"Zelf verder kunnen bouwen","Jij of je team begrijpt de belangrijkste technische keuzes en kan daarna weer zelfstandig met AI-tools verder.\n",{"intro":492},"Met Claude Code, Codex, Cursor, Lovable, Bolt of een andere AI-tool kun je razendsnel ver komen. Maar zodra echte gebruikers, gevoelige data of betalende klanten binnenkomen, worden technische keuzes ineens belangrijk. Wij helpen je bepalen wat goed zit, waar de risico's zitten en wat er nodig is om professioneel verder te kunnen.\n",{},"\u002Fuse-cases\u002Fvibe-coded-app-professionaliseren",{"intro":496,"causes":497},"Vibe coding is niet het probleem. Een prototype behandelen alsof het vanzelf een productieplatform wordt, meestal wel.\n",[498,501,504],{"title":499,"text":500},"De software groeide sneller dan de architectuur","Lokale oplossingen werken afzonderlijk, maar vormen samen niet altijd meer een logisch systeem.\n",{"title":502,"text":503},"Technische guardrails ontbreken","Tests, duidelijke grenzen, securitychecks en deploymentfeedback zijn vaak later toegevoegd of helemaal niet.\n",{"title":505,"text":506},"De eisen zijn veranderd","Wat prima was voor een experiment is niet automatisch geschikt voor echte gebruikers, gevoelige data en continu doorontwikkelen.\n",{"intro":508,"points":509},"Een codekwaliteitsscore helpt hier weinig. Je hebt senior engineers nodig die bestaande software kunnen begrijpen, risico's kunnen prioriteren en het moeilijke stuk ook zelf kunnen repareren.\n",[510,512,514],{"title":47,"text":511},"Naast de gegenereerde code kijken we naar het complete product eromheen.\n",{"title":278,"text":513},"Bestaande codebases, integraties en technische schuld zijn voor ons geen reden om opnieuw te beginnen.\n",{"title":515,"text":516},"Overdracht hoort bij het resultaat","Het doel is dat jullie na de rescue weer zelfstandig verantwoord verder kunnen.\n",{"intro":518,"signals":519},"Het omslagpunt komt meestal wanneer een experiment langzaam een echt softwareproduct wordt.\n",[520,523,526,529],{"title":521,"text":522},"Nieuwe wijzigingen voelen steeds riskanter","Een kleine feature kan ineens gevolgen hebben voor authentication, database, deployment of andere delen van de app.\n",{"title":524,"text":525},"De codebase wordt moeilijker te begrijpen","Er zijn steeds meer bestanden, afhankelijkheden en oplossingen waarvan niemand precies weet waarom ze zo gebouwd zijn.\n",{"title":527,"text":528},"Productie begint spannend te worden","Je twijfelt of data, rechten, backups, foutafhandeling en deployment betrouwbaar genoeg zijn voor echte gebruikers.\n",{"title":530,"text":531},"Je wilt door, maar niet blind","Alles opnieuw bouwen voelt overdreven, maar doorgaan zoals nu voelt ook niet meer verantwoord.\n",{"intro":533},"We beginnen met een Vibe Code Rescue Audit. We onderzoeken wat je hebt, wat prima kan blijven, waar de echte risico's zitten en welke verbeteringen het meeste verschil maken. Zo voorkom je zowel blind doorbouwen als onnodig alles opnieuw maken.\n",{"buyerTriggerKeys":535,"primaryOfferKey":73,"offerKeys":536,"caseKeys":537,"relatedUseCaseKeys":538},[35],[73,74],[],[71,69],{"title":540,"description":541},"Vibe-coded app professionaliseren | 9to5 software","Vibe-coded app (Lovable, Bolt, Replit, v0) professioneel maken? 9to5 onderzoekt architectuur, code, security, tests en deployment en maakt er serieuze software van.\n","use-cases\u002Fvibe-coded-app-professionaliseren","Je hebt met AI-tools verrassend veel gebouwd. Nu moet de app betrouwbaar, veilig en onderhoudbaar genoeg worden voor serieus gebruik.\n",{"hero":83,"problem":469,"proof":84},"XOeMMVPWCsszcQqV3wgQ231S3ta3J0J1rDbx-zWJVYQ",{"id":547,"title":548,"body":549,"description":26,"desiredOutcome":553,"extension":32,"hero":565,"key":55,"meta":567,"navigation":38,"path":568,"problem":569,"proof":581,"recognition":593,"recommendedApproach":608,"relations":610,"seo":615,"stem":618,"summary":619,"visuals":620,"__hash__":622},"useCases_nl\u002Fuse-cases\u002Fai-prototype-naar-productie.md","Ons AI-prototype moet naar productie",{"type":23,"value":550,"toc":551},[],{"title":26,"searchDepth":27,"depth":27,"links":552},[],{"intro":554,"items":555},"Je wilt behouden wat het prototype heeft bewezen, maar de technische risico's terugbrengen voordat het systeem serieus gebruikt gaat worden.\n",[556,559,562],{"title":557,"text":558},"Betrouwbaar onder echte omstandigheden","De oplossing kan omgaan met fouten, onverwachte input en externe systemen die niet altijd meewerken.\n",{"title":560,"text":561},"Meetbaar gedrag","Je kunt volgen of kwaliteit, latency, kosten en foutpercentages binnen acceptabele grenzen blijven.\n",{"title":563,"text":564},"Beheersbaar in productie","Deployment, logging, security en menselijke controle zijn onderdeel van het systeem in plaats van losse nazorg.\n",{"intro":566},"Een demo mag af en toe vreemd doen, productiesoftware niet. Zodra een AI-prototype echte gebruikers, data en bedrijfsprocessen raakt, veranderen de eisen. We helpen bepalen wat er nog tussen een geslaagd experiment en een betrouwbare productieoplossing zit.\n",{},"\u002Fuse-cases\u002Fai-prototype-naar-productie",{"intro":570,"causes":571},"Een prototype is gebouwd om een aanname te bewijzen. Productiesoftware moet langdurig omgaan met onzekerheid, fouten en echte gebruikers.\n",[572,575,578],{"title":573,"text":574},"Betrouwbaarheid was nog geen hoofddoel","Tijdens een experiment is snelheid van leren meestal belangrijker dan volledige foutafhandeling.\n",{"title":576,"text":577},"AI gedraagt zich niet deterministisch","Goed gedrag moet worden gemeten en begrensd in plaats van alleen tijdens een demo te worden beoordeeld.\n",{"title":579,"text":580},"De rest van de software telt nu mee","Data, rechten, integraties, deployment en monitoring worden net zo belangrijk als de AI-functionaliteit zelf.\n",{"intro":582,"points":583},"AI naar productie brengen is voor ons vooral software engineering rond een niet-deterministisch onderdeel. Daar horen gewone production-grade principes bij en AI-specifieke evaluatie.\n",[584,587,590],{"title":585,"text":586},"Verder dan de demo","We kijken naar fouten, edge cases, integraties en operationeel gedrag.\n",{"title":588,"text":589},"Human-in-the-loop waar nodig","Niet ieder risico los je op met meer AI.\n",{"title":591,"text":592},"Gebouwd voor overdracht","Architectuur en keuzes worden zo vastgelegd dat het eigen team daarna verder kan.\n",{"intro":594,"signals":595},"Het prototype doet wat het moet doen, maar je merkt dat er nog een flink verschil zit tussen demonstreren en verantwoord live gaan.\n",[596,599,602,605],{"title":597,"text":598},"De happy flow werkt","Tijdens demo's gaat het goed, maar edge cases en fouten zijn nauwelijks uitgewerkt.\n",{"title":600,"text":601},"Je weet niet wat goed genoeg is","Er zijn nog geen duidelijke kwaliteitsgrenzen, evals of acceptatiecriteria.\n",{"title":603,"text":604},"Productievragen stapelen zich op","Security, monitoring, kosten, retries, rechten en support worden ineens belangrijk.\n",{"title":606,"text":607},"De eerste echte gebruikers komen eraan","Je wilt voorkomen dat zij de technische zwakke plekken voor je ontdekken.\n",{"intro":609},"Met een Vibe Code Rescue Audit brengen we eerst in kaart wat tussen het prototype en productie staat. Is de route daarna groot en duidelijk, dan kan Build & Integrate de productieversie gecontroleerd realiseren.\n",{"buyerTriggerKeys":611,"primaryOfferKey":73,"offerKeys":612,"caseKeys":613,"relatedUseCaseKeys":614},[35],[73,75],[],[68,64],{"title":616,"description":617},"AI-prototype naar productie brengen | 9to5 software","Van werkend AI-prototype naar productieklare software. 9to5 helpt met architectuur, betrouwbaarheid, security, integraties, monitoring en deployment.\n","use-cases\u002Fai-prototype-naar-productie","Het prototype bewijst dat het idee werkt. Nu moet het betrouwbaar, veilig en beheersbaar genoeg worden voor echte gebruikers en echte bedrijfsprocessen.\n",{"hero":469,"problem":327,"proof":621},"ls-prototype-to-production","myeuwXv8e8pN1dzrza2moXK8HUpYVBNB5u5KGZZ4bFA",{"id":624,"title":625,"body":626,"description":26,"desiredOutcome":630,"extension":32,"hero":642,"key":56,"meta":644,"navigation":38,"path":645,"problem":646,"proof":658,"recognition":670,"recommendedApproach":685,"relations":687,"seo":692,"stem":695,"summary":696,"visuals":697,"__hash__":699},"useCases_nl\u002Fuse-cases\u002Fai-agent-niet-betrouwbaar.md","Onze agent werkt niet betrouwbaar genoeg",{"type":23,"value":627,"toc":628},[],{"title":26,"searchDepth":27,"depth":27,"links":629},[],{"intro":631,"items":632},"Een agent is nooit altijd perfect. Je moet wel weten waar hij kan falen en hoe het systeem daarmee omgaat.\n",[633,636,639],{"title":634,"text":635},"Voorspelbaarder gedrag","De agent kiest consistenter de juiste stappen, tools en informatie.\n",{"title":637,"text":638},"Fouten worden zichtbaar","Je kunt meten welke situaties misgaan in plaats van te vertrouwen op losse handmatige tests.\n",{"title":640,"text":641},"Risico's zijn begrensd","Validatie, guardrails en menselijke controle voorkomen dat een fout direct een groot probleem wordt.\n",{"intro":643},"Een agent die acht van de tien keer goed werkt, kan in een demo fantastisch lijken en in productie onbruikbaar zijn. We zoeken uit waar de onbetrouwbaarheid vandaan komt en welke technische maatregelen het systeem beheersbaar maken.\n",{},"\u002Fuse-cases\u002Fai-agent-niet-betrouwbaar",{"intro":647,"causes":648},"De oorzaak zit zelden alleen in de prompt. Een agent is een compleet softwaresysteem waarin model, tools, context, state en foutafhandeling samenwerken.\n",[649,652,655],{"title":650,"text":651},"De taak is te open","De agent krijgt meer vrijheid dan nodig is om het proces goed uit te voeren.\n",{"title":653,"text":654},"De feedbackloop ontbreekt","Zonder evals en traces is moeilijk te zien welk onderdeel werkelijk faalt.\n",{"title":656,"text":657},"Fouten worden niet afgevangen","Eén verkeerde modelbeslissing kan onnodig doorwerken in alle volgende stappen.\n",{"intro":659,"points":660},"Een betrouwbare agent krijg je niet door eindeloos aan één prompt te sleutelen. Je behandelt hem als software, met duidelijke verantwoordelijkheden, observability en gecontroleerde faalpaden.\n",[661,664,667],{"title":662,"text":663},"Het hele systeem bekijken","We onderzoeken de volledige agentflow, niet alleen de instructietekst.\n",{"title":665,"text":666},"Eerst meten, dan optimaliseren","Evals en traces maken zichtbaar welke veranderingen daadwerkelijk helpen.\n",{"title":668,"text":669},"Autonomie hoeft geen doel te zijn","We kiezen bewust waar deterministische software of menselijke controle verstandiger is.\n",{"intro":671,"signals":672},"Het voelt vaak eerst als een reeks losse incidenten.\n",[673,676,679,682],{"title":674,"text":675},"Dezelfde input geeft wisselende resultaten","Wat gisteren goed ging, kan vandaag ineens een andere route nemen.\n",{"title":677,"text":678},"De agent kiest soms de verkeerde tool","Hij roept acties aan die niet nodig zijn of gebruikt verkeerde gegevens.\n",{"title":680,"text":681},"Promptaanpassingen verplaatsen het probleem","Een verbetering voor de ene situatie maakt een andere situatie slechter.\n",{"title":683,"text":684},"Fouten verschijnen vooral bij echte gebruikers","De demo's zijn goed, maar de werkelijkheid bevat veel meer variatie.\n",{"intro":686},"In een Vibe Code Rescue Audit maken we het gedrag eerst begrijpelijk en meetbaar. Daarna bepalen we welke combinatie van architectuur, evals, validatie, guardrails en human-in-the-loop nodig is. De concrete fixes kunnen vervolgens in een Rescue Sprint.\n",{"buyerTriggerKeys":688,"primaryOfferKey":73,"offerKeys":689,"caseKeys":690,"relatedUseCaseKeys":691},[35],[73,74],[],[64,62],{"title":693,"description":694},"AI-agent niet betrouwbaar? | 9to5 software","Werkt je AI-agent soms goed en soms niet? 9to5 onderzoekt tools, dataflows, evals, guardrails en architectuur en maakt gedrag beter beheersbaar.\n","use-cases\u002Fai-agent-niet-betrouwbaar","De agent kan indrukwekkende dingen, maar gedraagt zich niet voorspelbaar genoeg om er een serieus proces of product op te laten vertrouwen.\n",{"hero":698,"problem":327,"proof":84},"sq-process-steps","SFHf3a7id02ySYUjMOJkh9AJnvVphKUoOPfbtjOvNaY",{"id":701,"title":702,"body":703,"description":26,"desiredOutcome":707,"extension":32,"hero":719,"key":57,"meta":721,"navigation":38,"path":722,"problem":723,"proof":735,"recognition":747,"recommendedApproach":762,"relations":764,"seo":769,"stem":772,"summary":773,"visuals":774,"__hash__":775},"useCases_nl\u002Fuse-cases\u002Fgegenereerde-code-niet-meer-begrijpelijk.md","Niemand begrijpt de gegenereerde code meer",{"type":23,"value":704,"toc":705},[],{"title":26,"searchDepth":27,"depth":27,"links":706},[],{"intro":708,"items":709},"Je hoeft niet ieder bestand uit je hoofd te kennen. Wel moet een engineer kunnen begrijpen waar functionaliteit hoort en wat een wijziging raakt.\n",[710,713,716],{"title":711,"text":712},"Een begrijpelijke structuur","Verantwoordelijkheden en grenzen in de codebase zijn weer herkenbaar.\n",{"title":714,"text":715},"Minder verrassingen","Engineers kunnen beter voorspellen wat een wijziging elders beïnvloedt.\n",{"title":717,"text":718},"AI-tools worden weer bruikbaar","Goede structuur geeft ook coding agents betere context om verantwoord mee te werken.\n",{"intro":720},"AI kan sneller code produceren dan een team hem kan begrijpen. Dat gaat goed totdat iedere wijziging eerst archeologisch onderzoek vereist. We helpen je de codebase terug te brengen naar software waar mensen weer grip op hebben.\n",{},"\u002Fuse-cases\u002Fgegenereerde-code-niet-meer-begrijpelijk",{"intro":724,"causes":725},"Code die compileert is niet automatisch een samenhangend softwaresysteem.\n",[726,729,732],{"title":727,"text":728},"Iedere taak is lokaal opgelost","De oplossing van vandaag past niet altijd bij de keuzes van vorige maand.\n",{"title":730,"text":731},"Architectuur is impliciet gebleven","Technische grenzen bestaan alleen in het hoofd van ontwikkelaars of helemaal niet.\n",{"title":733,"text":734},"Opschonen werd steeds uitgesteld","AI maakt toevoegen goedkoop, waardoor verwijderen en consolideren relatief weinig aandacht krijgen.\n",{"intro":736,"points":737},"Bij een rommelige codebase gaat het vooral om inschatten wat essentieel is, welke schuld echt pijn doet en hoe je voorkomt dat het opruimen zelf het nieuwe probleem wordt.\n",[738,741,744],{"title":739,"text":740},"Eerst begrijpen","We veranderen niet blind code voordat duidelijk is welke rol die code heeft.\n",{"title":742,"text":743},"Risico boven schoonheid","Niet iedere lelijke constructie hoeft direct te worden herschreven.\n",{"title":745,"text":746},"Documenteren wat ertoe doet","Belangrijke architectuurkeuzes worden expliciet zodat kennis niet opnieuw verdwijnt.\n",{"intro":748,"signals":749},"De code is meestal best leesbaar. Alleen begrijpt niemand meer hoe het geheel in elkaar zit.\n",[750,753,756,759],{"title":751,"text":752},"Er bestaan meerdere oplossingen voor hetzelfde probleem","Oude en nieuwe implementaties leven naast elkaar en niemand weet wat leidend is.\n",{"title":754,"text":755},"Bestanden en componenten blijven groeien","Steeds meer verantwoordelijkheden komen op dezelfde plekken terecht.\n",{"title":757,"text":758},"Verwijderen voelt gevaarlijk","Niemand weet zeker of ogenschijnlijk ongebruikte code ergens toch nodig is.\n",{"title":760,"text":761},"Iedere prompt vraagt enorme context","Je moet de AI steeds opnieuw uitleggen hoe grote delen van het project werken.\n",{"intro":763},"Een Vibe Code Rescue Audit brengt eerst de werkelijke structuur, duplicatie en technische risico's in kaart. Daarna pakken we alleen de onderdelen aan die ontwikkeling daadwerkelijk blokkeren. Een refactor om de refactor doen we niet.\n",{"buyerTriggerKeys":765,"primaryOfferKey":73,"offerKeys":766,"caseKeys":767,"relatedUseCaseKeys":768},[35],[73,74],[],[58,71],{"title":770,"description":771},"Gegenereerde code niet meer begrijpelijk? | 9to5 software","AI-gegenereerde code onbegrijpelijk geworden? 9to5 brengt architectuur en technische schuld in kaart en maakt de codebase weer beheersbaar.\n","use-cases\u002Fgegenereerde-code-niet-meer-begrijpelijk","De software groeit snel, maar de structuur en technische keuzes zijn zo ondoorzichtig geworden dat wijzigingen steeds riskanter worden.\n",{"hero":83,"problem":469,"proof":84},"1_XZXyBmF-1m192UYBU2fQe-uuIUx-5BLRD_OTtD9ts",{"id":777,"title":778,"body":779,"description":26,"desiredOutcome":783,"extension":32,"hero":795,"key":58,"meta":797,"navigation":38,"path":798,"problem":799,"proof":811,"recognition":823,"recommendedApproach":838,"relations":840,"seo":845,"stem":848,"summary":849,"visuals":850,"__hash__":851},"useCases_nl\u002Fuse-cases\u002Fai-code-breekt-steeds.md","Iedere nieuwe AI-codewijziging breekt iets anders",{"type":23,"value":780,"toc":781},[],{"title":26,"searchDepth":27,"depth":27,"links":782},[],{"intro":784,"items":785},"Je wilt weer veranderingen kunnen doorvoeren zonder telkens achteraf te ontdekken welke nevenschade er is ontstaan.\n",[786,789,792],{"title":787,"text":788},"Wijzigingen blijven lokaal","Een verandering heeft alleen gevolgen op plekken waar je dat ook verwacht.\n",{"title":790,"text":791},"Regressies worden snel gevonden","Tests en checks signaleren problemen voordat gebruikers ze ontdekken.\n",{"title":793,"text":794},"Ontwikkelsnelheid wordt weer echt snel","Minder herstelwerk betekent dat AI-assisted development opnieuw tijd oplevert.\n",{"intro":796},"Je vraagt om één kleine aanpassing en drie andere dingen stoppen met werken. Dat is meestal geen pech. Het wijst erop dat grenzen, tests of technische samenhang ontbreken. We zoeken uit waar die kwetsbaarheid vandaan komt.\n",{},"\u002Fuse-cases\u002Fai-code-breekt-steeds",{"intro":800,"causes":801},"AI-codingtools zijn sterk in lokale wijzigingen. Ze kennen niet automatisch alle impliciete afspraken die door een groeiend product heen lopen.\n",[802,805,808],{"title":803,"text":804},"Tests dekken kritieke afspraken niet af","De AI krijgt weinig feedback wanneer een wijziging bestaande functionaliteit breekt.\n",{"title":806,"text":807},"Onderdelen zijn te sterk gekoppeld","Een lokale aanpassing beïnvloedt state, data of gedrag op onverwachte plekken.\n",{"title":809,"text":810},"Interfaces zijn niet duidelijk genoeg","De codebase laat onvoldoende zien welke contracten stabiel moeten blijven.\n",{"intro":812,"points":813},"De AI hoeft niet minder code te schrijven. De codebase heeft genoeg feedback en structuur nodig om fouten snel zichtbaar te maken.\n",[814,817,820],{"title":815,"text":816},"Tests waar ze waarde leveren","We testen kritieke contracten en flows, niet ieder detail voor een percentage.\n",{"title":818,"text":819},"Duidelijke technische grenzen","Minder verborgen koppelingen betekent minder onverwachte regressies.\n",{"title":821,"text":822},"Praktische AI-guardrails","De ontwikkelworkflow helpt coding agents binnen de architectuur te blijven.\n",{"intro":824,"signals":825},"Het patroon wordt vaak zichtbaar zodra de codebase groter wordt en meerdere onderdelen afhankelijk van elkaar zijn.\n",[826,829,832,835],{"title":827,"text":828},"Een simpele feature veroorzaakt onverwachte bugs","Functionaliteit op andere schermen of flows stopt ineens met werken.\n",{"title":830,"text":831},"Dezelfde fout komt later terug","Een bug wordt gerepareerd, maar er is niets dat voorkomt dat hij opnieuw ontstaat.\n",{"title":833,"text":834},"Refactors zijn bijna onmogelijk","Te veel onderdelen blijken impliciet van elkaar afhankelijk.\n",{"title":836,"text":837},"Je vertrouwt vooral op handmatig klikken","Na iedere wijziging moet iemand de hele applicatie nalopen om te zien of alles nog werkt.\n",{"intro":839},"Een Vibe Code Rescue Audit zoekt eerst uit waarom wijzigingen zoveel nevenschade veroorzaken. Daarna kunnen we de belangrijkste technische oorzaken gericht aanpakken in een Rescue Sprint.\n",{"buyerTriggerKeys":841,"primaryOfferKey":73,"offerKeys":842,"caseKeys":843,"relatedUseCaseKeys":844},[35],[73,74],[],[57,64],{"title":846,"description":847},"AI-code breekt steeds iets anders | 9to5 software","Breekt AI-gegenereerde code steeds bestaande functionaliteit? 9to5 onderzoekt architectuur, tests en afhankelijkheden en maakt wijzigingen veiliger.\n","use-cases\u002Fai-code-breekt-steeds","Nieuwe features gaan snel, maar regressies, onverwachte fouten en herstelwerk kosten steeds meer tijd.\n",{"hero":83,"problem":327,"proof":84},"VNEXpNdpON5n56uccmpFV2O2YG-GSUhBX5O1dB-4ktQ",{"id":853,"title":854,"body":855,"description":26,"desiredOutcome":859,"extension":32,"hero":871,"key":59,"meta":873,"navigation":38,"path":874,"problem":875,"proof":887,"recognition":899,"recommendedApproach":914,"relations":916,"seo":921,"stem":924,"summary":925,"visuals":926,"__hash__":927},"useCases_nl\u002Fuse-cases\u002Fvast-op-auth-database-of-rechten.md","We lopen vast op authentication, database of rechten",{"type":23,"value":856,"toc":857},[],{"title":26,"searchDepth":27,"depth":27,"links":858},[],{"intro":860,"items":861},"Je wilt geen compleet herontwerp. Je wilt dat de concrete technische blokkade verdwijnt zonder nieuwe problemen te introduceren.\n",[862,865,868],{"title":863,"text":864},"De blokkade is opgelost","De betreffende auth-, database- of rechtenflow werkt aantoonbaar zoals bedoeld.\n",{"title":866,"text":867},"De oplossing is veilig","We repareren het probleem zonder data-integriteit of toegang te compromitteren.\n",{"title":869,"text":870},"Je team kan verder","De relevante keuzes en aandachtspunten zijn duidelijk genoeg om daarna zelf door te ontwikkelen.\n",{"intro":872},"Soms is het probleem helemaal niet vaag. Login werkt niet goed, rechten lekken, een migratie gaat mis of je datamodel zit in de weg. Dan heb je geen groot adviestraject nodig, maar iemand die het moeilijke technische stuk oplost.\n",{},"\u002Fuse-cases\u002Fvast-op-auth-database-of-rechten",{"intro":876,"causes":877},"Authentication, autorisatie en databases zijn fundamentele onderdelen van software. Een snelle workaround kan daardoor veel grotere problemen veroorzaken.\n",[878,881,884],{"title":879,"text":880},"Het probleem raakt meerdere lagen","Frontend, backend, provider, database en rechtenmodel moeten hetzelfde beeld van de gebruiker hebben.\n",{"title":882,"text":883},"Fouten hebben serieuze gevolgen","Een verkeerde fix kan leiden tot dataverlies of toegang tot gegevens die niet zichtbaar mogen zijn.\n",{"title":885,"text":886},"Externe providers voegen complexiteit toe","Auth- en databaseplatforms abstraheren veel, totdat je buiten hun happy flow komt.\n",{"intro":888,"points":889},"Dit soort problemen zijn gewone senior software-engineeringproblemen. Precies daarom hoeft er niet per se een compleet AI-traject omheen.\n",[890,893,896],{"title":891,"text":892},"Direct de code in","Geen weken analyse wanneer het technische probleem al voldoende scherp is.\n",{"title":894,"text":895},"Security telt mee","Een werkende login is niet genoeg als de rechten daarna niet kloppen.\n",{"title":897,"text":898},"Geen permanente afhankelijkheid","We repareren, testen, documenteren en dragen weer over.\n",{"intro":900,"signals":901},"Dit is meestal een goed afgebakend technisch probleem dat toch verrassend veel tijd kan opslokken.\n",[902,905,908,911],{"title":903,"text":904},"Login of OAuth werkt niet betrouwbaar","Redirects, callbacks, tokens of sessies gedragen zich anders dan verwacht.\n",{"title":906,"text":907},"Rollen en rechten zijn onduidelijk","Gebruikers kunnen te veel, te weinig of inconsistent verschillende acties uitvoeren.\n",{"title":909,"text":910},"Het datamodel zit in de weg","Nieuwe functionaliteit past niet goed bij de bestaande tabellen en relaties.\n",{"title":912,"text":913},"Migraties of dataproblemen blokkeren deployment","Je kunt niet veilig verder zonder eerst de onderliggende databaseproblemen op te lossen.\n",{"intro":915},"Als het probleem tijdens de intake voldoende duidelijk is, starten we direct met een Rescue Sprint. We reproduceren het probleem, begrijpen de relevante code en systemen en repareren de blokkade gericht. Alleen als de oorzaak veel fundamenteler blijkt, is eerst een bredere audit nodig.\n",{"buyerTriggerKeys":917,"primaryOfferKey":74,"offerKeys":918,"caseKeys":919,"relatedUseCaseKeys":920},[35],[74,73],[],[61,58],{"title":922,"description":923},"Vast op authentication, database of rechten? | 9to5 software","Vastgelopen op auth, database of autorisatie? Senior engineers van 9to5 stappen gericht in en lossen de technische blokkade op.\n","use-cases\u002Fvast-op-auth-database-of-rechten","De feature is duidelijk, maar een concreet technisch probleem rond login, data of autorisatie houdt het project tegen.\n",{"hero":83,"problem":327,"proof":84},"T7mYo3pJrclsJS7AHYm_PaLTL5ihpTSLdod0KaSfSXI",{"id":929,"title":930,"body":931,"description":26,"desiredOutcome":935,"extension":32,"hero":947,"key":60,"meta":949,"navigation":38,"path":950,"problem":951,"proof":963,"recognition":975,"recommendedApproach":990,"relations":992,"seo":997,"stem":1000,"summary":1001,"visuals":1002,"__hash__":1003},"useCases_nl\u002Fuse-cases\u002Fai-koppelen-aan-bestaande-systemen.md","We krijgen de oplossing niet gekoppeld aan bestaande systemen",{"type":23,"value":932,"toc":933},[],{"title":26,"searchDepth":27,"depth":27,"links":934},[],{"intro":936,"items":937},"De AI hoort geen los eiland te blijven, maar een betrouwbaar onderdeel te worden van de systemen en processen die er al zijn.\n",[938,941,944],{"title":939,"text":940},"Betrouwbare gegevensuitwisseling","Data komt op het juiste moment, in het juiste formaat en bij het juiste systeem terecht.\n",{"title":942,"text":943},"Fouten zijn beheersbaar","Timeouts, duplicaten en tijdelijke storingen leiden niet direct tot onvoorspelbaar gedrag.\n",{"title":945,"text":946},"Rechten blijven kloppen","De integratie respecteert bestaande gebruikers, rollen en toegangsregels.\n",{"intro":948},"De AI-demo werkt. Alleen moet hij nog gegevens uit systeem A halen, iets in systeem B wijzigen en rekening houden met rechten uit systeem C. Daar wordt een AI-project vaak een serieus software-engineeringproject.\n",{},"\u002Fuse-cases\u002Fai-koppelen-aan-bestaande-systemen",{"intro":952,"causes":953},"Een integratie is meer dan een lijntje tussen twee blokken in een architectuurdiagram. Hij moet ook met de praktijk kunnen omgaan.\n",[954,957,960],{"title":955,"text":956},"Systemen spreken verschillende talen","Datamodellen, statussen en verantwoordelijkheden sluiten zelden één-op-één op elkaar aan.\n",{"title":958,"text":959},"Externe systemen zijn niet altijd beschikbaar","Retries, queues en foutafhandeling worden belangrijk zodra de koppeling productie raakt.\n",{"title":961,"text":962},"AI-acties hebben echte gevolgen","Wanneer een agent iets mag wijzigen, moet duidelijk zijn wie verantwoordelijk is en wat er gebeurt bij een fout.\n",{"intro":964,"points":965},"Koppelingen maken hoort bij de kern van hoe 9to5 software bouwt. AI is pas nuttig als hij veilig kan samenwerken met echte data, software en mensen.\n",[966,969,972],{"title":967,"text":968},"Bestaande software is het vertrekpunt","De organisatie hoeft zich niet eerst aan de AI-oplossing aan te passen.\n",{"title":970,"text":971},"Engineering rond de API","We ontwerpen ook retries, foutafhandeling, logging en rechten.\n",{"title":973,"text":974},"Geen demo-integraties","De koppeling moet onder echte omstandigheden bruikbaar blijven.\n",{"intro":976,"signals":977},"Vaak is het AI-gedeelte al bewezen en zit de echte technische blokkade in alles eromheen.\n",[978,981,984,987],{"title":979,"text":980},"De API doet net niet wat je nodig hebt","Documentatie is beperkt, verouderd of de gewenste flow past niet netjes op de beschikbare endpoints.\n",{"title":982,"text":983},"Authentication tussen systemen loopt vast","Tokens, serviceaccounts of user delegation maken de koppeling ingewikkelder.\n",{"title":985,"text":986},"Data loopt uit elkaar","Verschillende systemen gebruiken andere identifiers, statussen of datamodellen.\n",{"title":988,"text":989},"De happy flow werkt, fouten niet","Zodra een extern systeem tijdelijk niet beschikbaar is, raakt de workflow de draad kwijt.\n",{"intro":991},"Als de gewenste koppeling duidelijk is, pakken we hem direct aan in een Rescue Sprint. Blijkt tijdens de intake dat er eigenlijk een compleet nieuw geïntegreerd onderdeel nodig is, dan past Build & Integrate beter.\n",{"buyerTriggerKeys":993,"primaryOfferKey":74,"offerKeys":994,"caseKeys":995,"relatedUseCaseKeys":996},[35],[74,75],[],[59,67],{"title":998,"description":999},"ChatGPT of Claude koppelen aan je software | 9to5 software","ChatGPT, Claude of OpenAI koppelen aan je software? 9to5 koppelt AI aan bestaande API's, databases en bedrijfsprocessen.\n","use-cases\u002Fai-koppelen-aan-bestaande-systemen","De AI werkt op zichzelf, maar de echte waarde zit achter API's, databases en bedrijfssoftware waar de integratie vastloopt.\n",{"hero":468,"problem":83,"proof":346},"o17isj8ZRicHE1t9xKqCrsF8ILEZ4jGJtee4HdYhDIY",{"id":1005,"title":1006,"body":1007,"description":26,"desiredOutcome":1011,"extension":32,"hero":1023,"key":61,"meta":1025,"navigation":38,"path":1026,"problem":1027,"proof":1039,"recognition":1051,"recommendedApproach":1066,"relations":1068,"seo":1073,"stem":1076,"summary":1077,"visuals":1078,"__hash__":1079},"useCases_nl\u002Fuse-cases\u002Fsecurity-en-privacy-ai-oplossing.md","We maken ons zorgen over security of privacy",{"type":23,"value":1008,"toc":1009},[],{"title":26,"searchDepth":27,"depth":27,"links":1010},[],{"intro":1012,"items":1013},"Je wilt technisch kunnen uitleggen waar gegevens heen gaan en wie wat mag, zodat je niet hoeft te hopen dat gevoelige data goed wordt behandeld.\n",[1014,1017,1020],{"title":1015,"text":1016},"Heldere datastromen","Je weet welke gegevens intern blijven en welke externe diensten ze verwerken.\n",{"title":1018,"text":1019},"Controle over toegang","Authentication, autorisatie en tenant-isolatie zijn bewust ingericht.\n",{"title":1021,"text":1022},"Concrete risicoprioriteiten","Je weet welke problemen echt urgent zijn en welke risico's acceptabel zijn.\n",{"intro":1024},"Welke data sturen we eigenlijk naar welk model? Kunnen gebruikers elkaars gegevens zien? Wat loggen we? Waar staan secrets? Als je die vragen niet overtuigend kunt beantwoorden, is het tijd om de technische situatie goed te bekijken.\n",{},"\u002Fuse-cases\u002Fsecurity-en-privacy-ai-oplossing",{"intro":1028,"causes":1029},"AI voegt nieuwe datastromen en externe afhankelijkheden toe aan gewone softwareproblemen rond security en privacy.\n",[1030,1033,1036],{"title":1031,"text":1032},"Data beweegt door meer systemen","Modelproviders, vector stores, observabilitytools en integraties kunnen allemaal onderdeel van dezelfde flow zijn.\n",{"title":1034,"text":1035},"AI-input is minder voorspelbaar","Gebruikers kunnen onverwachte inhoud aanbieden of proberen systeemgedrag te beïnvloeden.\n",{"title":1037,"text":1038},"De basissoftware blijft bepalend","Slechte autorisatie wordt niet opgelost door een veiliger taalmodel te kiezen.\n",{"intro":1040,"points":1041},"AI-security begint voor ons bij gewone software-engineering, niet bij losse prompts: dataflows begrijpen, toegang beperken, secrets beheren en fouten begrenzen.\n",[1042,1045,1048],{"title":1043,"text":1044},"End-to-end kijken","Van gebruiker en database tot modelprovider en logging.\n",{"title":1046,"text":1047},"Praktische prioritering","Niet ieder theoretisch risico krijgt dezelfde urgentie.\n",{"title":1049,"text":1050},"Ook de fix kunnen bouwen","Het advies hoeft daarna niet naar een andere technische partij.\n",{"intro":1052,"signals":1053},"Securityvragen komen vaak pas serieus op tafel wanneer een experiment richting productie of gevoelige data beweegt.\n",[1054,1057,1060,1063],{"title":1055,"text":1056},"Niemand weet precies welke data naar het model gaat","Prompts, context en uploads worden opgebouwd op meerdere plekken in de applicatie.\n",{"title":1058,"text":1059},"Rollen en rechten voelen fragiel","Het is lastig aan te tonen dat gebruikers alleen hun eigen gegevens kunnen bereiken.\n",{"title":1061,"text":1062},"Secrets en externe diensten zijn organisch gegroeid","API-keys en leveranciers zijn toegevoegd wanneer ze nodig waren.\n",{"title":1064,"text":1065},"Logging kan gevoelige inhoud bevatten","Debugginginformatie maakt mogelijk meer zichtbaar dan wenselijk is.\n",{"intro":1067},"Een Vibe Code Rescue Audit brengt de technische risico's, dataflows, rechten en externe afhankelijkheden in kaart. Daarna kunnen concrete verbeteringen gericht in een Rescue Sprint worden uitgevoerd.\n",{"buyerTriggerKeys":1069,"primaryOfferKey":73,"offerKeys":1070,"caseKeys":1071,"relatedUseCaseKeys":1072},[35],[73,74],[],[59,70],{"title":1074,"description":1075},"Security en privacy van AI-oplossing beoordelen | 9to5 software","Zorgen over security, privacy of datastromen in je AI-oplossing? 9to5 brengt technische risico's, rechten, leveranciers en dataflows in kaart.\n","use-cases\u002Fsecurity-en-privacy-ai-oplossing","De oplossing werkt, maar het is niet duidelijk genoeg waar data heen gaat, wie erbij kan en welke technische risico's er zijn.\n",{"hero":327,"problem":83,"proof":84},"cXNeksfon3btoEqrKhh54GXwlGtKiAAoTFhzir5lhgI",{"id":1081,"title":1082,"body":1083,"description":26,"desiredOutcome":1087,"extension":32,"hero":1099,"key":62,"meta":1101,"navigation":38,"path":1102,"problem":1103,"proof":1115,"recognition":1127,"recommendedApproach":1142,"relations":1144,"seo":1149,"stem":1152,"summary":1153,"visuals":1154,"__hash__":1157},"useCases_nl\u002Fuse-cases\u002Fai-oplossing-te-langzaam.md","De AI-oplossing is te langzaam",{"type":23,"value":1084,"toc":1085},[],{"title":26,"searchDepth":27,"depth":27,"links":1086},[],{"intro":1088,"items":1089},"De oplossing hoeft niet overal instant te zijn. Hij moet wel snel genoeg voelen voor het proces waarin mensen hem daadwerkelijk gebruiken.\n",[1090,1093,1096],{"title":1091,"text":1092},"Snellere kritieke flows","De stappen waarop gebruikers wachten krijgen als eerste aandacht.\n",{"title":1094,"text":1095},"Inzicht in bottlenecks","Je weet welk deel van model, applicatie of integratie de wachttijd veroorzaakt.\n",{"title":1097,"text":1098},"Bewuste performancekeuzes","Snelheid, kwaliteit en kosten worden tegen elkaar afgewogen in plaats van afzonderlijk geoptimaliseerd.\n",{"intro":1100},"Een AI-feature die technisch correct werkt maar twintig seconden nodig heeft voor iedere stap, voelt alsnog kapot. We zoeken uit waar de tijd werkelijk verloren gaat en welke optimalisaties zin hebben.\n",{},"\u002Fuse-cases\u002Fai-oplossing-te-langzaam",{"intro":1104,"causes":1105},"Een sneller model kiezen helpt weinig als het systeem ondertussen zes onnodige stappen uitvoert.\n",[1106,1109,1112],{"title":1107,"text":1108},"De architectuur is volledig sequentieel","Werk dat parallel of op de achtergrond kan, blokkeert nu de gebruiker.\n",{"title":1110,"text":1111},"Te veel AI voor simpele taken","Deterministische logica wordt via een model uitgevoerd terwijl gewone code sneller zou zijn.\n",{"title":1113,"text":1114},"Er wordt niet gericht gemeten","Zonder timings en traces optimaliseer je al snel het verkeerde onderdeel.\n",{"intro":1116,"points":1117},"Snelheid hangt van het hele systeem af. Daarom kijken we tegelijk naar AI, backend, database, integraties en de gebruikersflow.\n",[1118,1121,1124],{"title":1119,"text":1120},"Meten vóór optimaliseren","Eerst de bottleneck vinden, daarna pas technische keuzes maken.\n",{"title":1122,"text":1123},"AI waar het waarde toevoegt","Niet iedere stap hoeft door een taalmodel.\n",{"title":1125,"text":1126},"UX telt mee","Soms zit de beste verbetering in anders verwerken of slimmer terugkoppelen.\n",{"intro":1128,"signals":1129},"AI-latency komt vaak niet door één groot probleem, maar door een hele reeks kleine wachttijden bij elkaar.\n",[1130,1133,1136,1139],{"title":1131,"text":1132},"Iedere stap wacht op een model","Calls worden achter elkaar uitgevoerd terwijl dat niet altijd nodig is.\n",{"title":1134,"text":1135},"Agents doen veel meer werk dan verwacht","Eén gebruikersactie leidt tot een lange keten aan tool- en modelcalls.\n",{"title":1137,"text":1138},"Grote hoeveelheden context gaan steeds opnieuw mee","Dezelfde informatie wordt telkens opnieuw opgehaald en verwerkt.\n",{"title":1140,"text":1141},"Externe systemen vertragen de hele flow","Eén langzame API houdt de rest van de gebruikerservaring tegen.\n",{"intro":1143},"In een Vibe Code Rescue Audit meten we eerst waar de tijd daadwerkelijk verloren gaat. Daarna kunnen we in een Rescue Sprint gericht optimaliseren zonder willekeurig aan modellen en prompts te blijven draaien.\n",{"buyerTriggerKeys":1145,"primaryOfferKey":73,"offerKeys":1146,"caseKeys":1147,"relatedUseCaseKeys":1148},[35],[73,74],[],[63,56],{"title":1150,"description":1151},"AI-oplossing te langzaam? | 9to5 software","Trage AI-app of agent? 9to5 onderzoekt modellen, toolcalls, architectuur, caching en integraties en pakt de echte bottleneck aan.\n","use-cases\u002Fai-oplossing-te-langzaam","De functionaliteit werkt, maar gebruikers wachten zo lang dat het product of proces in de praktijk niet prettig bruikbaar is.\n",{"hero":1155,"problem":698,"proof":1156},"sq-bottleneck-pressure","ls-optimize-flow","r3fSEx3JYpHl-bXHZXjYdWavDHn5OQPgYnUHhMLrqWk",{"id":1159,"title":1160,"body":1161,"description":26,"desiredOutcome":1165,"extension":32,"hero":1177,"key":63,"meta":1179,"navigation":38,"path":1180,"problem":1181,"proof":1193,"recognition":1205,"recommendedApproach":1220,"relations":1222,"seo":1227,"stem":1230,"summary":1231,"visuals":1232,"__hash__":1233},"useCases_nl\u002Fuse-cases\u002Fai-oplossing-te-duur.md","De AI-oplossing wordt te duur",{"type":23,"value":1162,"toc":1163},[],{"title":26,"searchDepth":27,"depth":27,"links":1164},[],{"intro":1166,"items":1167},"Je wilt niet simpelweg de goedkoopste modellen gebruiken. Je wilt dat de kosten in verhouding staan tot de waarde van iedere gebruikersflow.\n",[1168,1171,1174],{"title":1169,"text":1170},"Kosten worden inzichtelijk","Je weet welke acties, gebruikers of processen het meeste verbruik veroorzaken.\n",{"title":1172,"text":1173},"Verspilling verdwijnt","Onnodige calls, context en dubbele verwerking worden gericht verminderd.\n",{"title":1175,"text":1176},"Groei wordt voorspelbaarder","Je kunt beter inschatten wat meer gebruik financieel betekent.\n",{"intro":1178},"Een paar euro tijdens het prototype is iets anders dan honderden of duizenden gebruikers die iedere dag dezelfde workflow uitvoeren. We zoeken uit waar de kosten ontstaan en hoe je ze verlaagt zonder de oplossing kapot te optimaliseren.\n",{},"\u002Fuse-cases\u002Fai-oplossing-te-duur",{"intro":1182,"causes":1183},"AI-kosten zijn vaak niet alleen een prijsprobleem, maar ook een architectuur- en productprobleem.\n",[1184,1187,1190],{"title":1185,"text":1186},"Dure modellen worden overal gebruikt","Simpele taken krijgen dezelfde zware modelkeuze als complexe taken.\n",{"title":1188,"text":1189},"Workflows doen onnodig veel werk","Calls, retrieval en verwerking worden herhaald terwijl resultaten herbruikbaar zijn.\n",{"title":1191,"text":1192},"Kosten zijn geen onderdeel van observability","Daardoor zie je verspilling pas wanneer de factuur binnenkomt.\n",{"intro":1194,"points":1195},"De goedkoopste modelcall is vaak de call die niet nodig blijkt. Daarom kijken we naar het hele systeem en niet alleen naar de prijslijst van modelproviders.\n",[1196,1199,1202],{"title":1197,"text":1198},"Kosten én kwaliteit","Goedkoper helpt niet als de bruikbaarheid instort.\n",{"title":1200,"text":1201},"Architectuur boven losse tweaks","Routing, caching en workflowontwerp kunnen meer opleveren dan promptmicro-optimalisatie.\n",{"title":1203,"text":1204},"Meetbaar resultaat","Optimalisatie wordt gekoppeld aan werkelijk verbruik per relevante flow.\n",{"intro":1206,"signals":1207},"Kostenproblemen worden vaak pas zichtbaar wanneer een experiment succesvol begint te schalen.\n",[1208,1211,1214,1217],{"title":1209,"text":1210},"Modelkosten groeien sneller dan gebruikers","Iedere nieuwe gebruiker veroorzaakt relatief veel extra verbruik.\n",{"title":1212,"text":1213},"Agents maken veel calls per taak","Een eenvoudige actie kan ongemerkt tientallen model- of toolcalls bevatten.\n",{"title":1215,"text":1216},"Grote prompts worden steeds meegestuurd","Context groeit mee met het product zonder dat duidelijk is wat echt nodig is.\n",{"title":1218,"text":1219},"Niemand kent de kosten per flow","Er is wel een maandfactuur, maar nauwelijks inzicht in wat die veroorzaakt.\n",{"intro":1221},"Met een Vibe Code Rescue Audit brengen we kosten per relevante flow en de grootste technische oorzaken in kaart. Daarna voeren we de meest zinvolle optimalisaties uit in een Rescue Sprint.\n",{"buyerTriggerKeys":1223,"primaryOfferKey":73,"offerKeys":1224,"caseKeys":1225,"relatedUseCaseKeys":1226},[35],[73,74],[],[62,70],{"title":1228,"description":1229},"AI-oplossing te duur? Kosten optimaliseren | 9to5 software","AI-kosten (OpenAI, Claude, tokens) lopen op? 9to5 onderzoekt modelgebruik, agentflows, caching en infrastructuur en zoekt waar onnodige kosten ontstaan.\n","use-cases\u002Fai-oplossing-te-duur","Het gebruik groeit en daarmee ook de model-, infrastructuur- of API-kosten. De huidige architectuur blijkt economisch niet goed mee te schalen.\n",{"hero":1155,"problem":698,"proof":1156},"m6gNsn2FRHUsScUAdhv1DQNeQGpg0QWoCX-lOQUODsI",{"id":1235,"title":1236,"body":1237,"description":26,"desiredOutcome":1241,"extension":32,"hero":1253,"key":64,"meta":1255,"navigation":38,"path":1256,"problem":1257,"proof":1269,"recognition":1281,"recommendedApproach":1296,"relations":1298,"seo":1303,"stem":1306,"summary":1307,"visuals":1308,"__hash__":1310},"useCases_nl\u002Fuse-cases\u002Ftests-evals-monitoring-voor-ai.md","We missen tests, evals of monitoring",{"type":23,"value":1238,"toc":1239},[],{"title":26,"searchDepth":27,"depth":27,"links":1240},[],{"intro":1242,"items":1243},"Je wilt met vertrouwen kunnen veranderen omdat je snel ziet wat een nieuwe prompt, modelversie of codewijziging daadwerkelijk doet.\n",[1244,1247,1250],{"title":1245,"text":1246},"Regressies worden zichtbaar","Belangrijke bestaande situaties worden automatisch opnieuw gecontroleerd.\n",{"title":1248,"text":1249},"AI-kwaliteit wordt meetbaar","Je vergelijkt wijzigingen op relevante voorbeelden en criteria.\n",{"title":1251,"text":1252},"Productie geeft feedback","Fouten, latency en opvallend gedrag verdwijnen niet meer stilletjes in logs.\n",{"intro":1254},"\"Het voelt beter\" is geen betrouwbare teststrategie. Als je AI-functionaliteit serieus gebruikt, moet je kunnen zien wat wijzigingen doen en wanneer het in productie misgaat. Wij helpen die feedbackloop neerzetten.\n",{},"\u002Fuse-cases\u002Ftests-evals-monitoring-voor-ai",{"intro":1258,"causes":1259},"Traditionele softwaretests blijven belangrijk, maar AI voegt gedrag toe waarvoor niet altijd één exact goed antwoord bestaat.\n",[1260,1263,1266],{"title":1261,"text":1262},"AI-output is probabilistisch","Exacte stringvergelijkingen zijn voor veel AI-taken niet voldoende.\n",{"title":1264,"text":1265},"Goede voorbeelden zijn niet vastgelegd","Kennis over wat goed en fout is zit vooral in hoofden en losse chats.\n",{"title":1267,"text":1268},"Observability stopt bij technische errors","Een HTTP 200 zegt niets over de kwaliteit van het antwoord.\n",{"intro":1270,"points":1271},"Een meetlaag is voor ons pas nuttig als engineers er sneller mee kunnen zien of een verandering veilig en daadwerkelijk beter is.\n",[1272,1275,1278],{"title":1273,"text":1274},"Gewone tests waar het kan","Deterministische software blijft gewoon deterministisch testbaar.\n",{"title":1276,"text":1277},"Evals waar het nodig is","AI-gedrag krijgt voorbeelden en criteria die passen bij de echte use case.\n",{"title":1279,"text":1280},"Productiedata sluit de lus","Monitoring laat zien welke situaties in de werkelijkheid aandacht vragen.\n",{"intro":1282,"signals":1283},"Zonder goede feedbackloop wordt een AI-product steeds moeilijker verantwoord door te ontwikkelen.\n",[1284,1287,1290,1293],{"title":1285,"text":1286},"Testen gebeurt vooral handmatig","Iemand probeert na iedere wijziging een paar bekende voorbeelden.\n",{"title":1288,"text":1289},"Promptwijzigingen zijn moeilijk te vergelijken","Je weet niet objectief of versie B werkelijk beter is dan versie A.\n",{"title":1291,"text":1292},"Productiefouten worden via gebruikers ontdekt","Het systeem signaleert zelf nauwelijks afwijkend gedrag.\n",{"title":1294,"text":1295},"Modelupdates voelen spannend","Een nieuwe provider- of modelversie kan gedrag veranderen zonder duidelijke waarschuwing.\n",{"intro":1297},"Als de scope duidelijk is, zetten we in een Rescue Sprint een praktische feedbackloop neer met de juiste combinatie van tests, evals, traces en monitoring. Is eerst breder onderzoek nodig, dan beginnen we met een audit.\n",{"buyerTriggerKeys":1299,"primaryOfferKey":74,"offerKeys":1300,"caseKeys":1301,"relatedUseCaseKeys":1302},[35],[74,73],[],[56,58],{"title":1304,"description":1305},"Tests, evals en monitoring voor AI | 9to5 software","AI zonder goede tests, LLM-evals of monitoring? 9to5 helpt meetbare kwaliteit, regressietests en productie-observability opzetten.\n","use-cases\u002Ftests-evals-monitoring-voor-ai","De AI-functionaliteit draait, maar niemand kan objectief zien of wijzigingen beter worden, slechter worden of stilletjes iets breken.\n",{"hero":327,"problem":698,"proof":1309},"ls-workflow-flow","F0-JIBI3DxurVE_QrFLSjLeY9RS71WylBwFI2fvkDtw",{"id":1312,"title":1313,"body":1314,"description":26,"desiredOutcome":1318,"extension":32,"hero":1330,"key":65,"meta":1332,"navigation":38,"path":1333,"problem":1334,"proof":1346,"recognition":1358,"recommendedApproach":1373,"relations":1375,"seo":1380,"stem":1383,"summary":1384,"visuals":1385,"__hash__":1386},"useCases_nl\u002Fuse-cases\u002Fdevelopmentteam-loopt-vast-met-ai.md","Ons eigen developmentteam loopt technisch vast",{"type":23,"value":1315,"toc":1316},[],{"title":26,"searchDepth":27,"depth":27,"links":1317},[],{"intro":1319,"items":1320},"Je wilt het bestaande team niet vervangen, maar de technische blokkade wegnemen zodat het team weer zelfstandig verder kan.\n",[1321,1324,1327],{"title":1322,"text":1323},"Het moeilijke stuk wordt opgelost","Senior engineers pakken gericht het onderdeel aan waarop het team vastloopt.\n",{"title":1325,"text":1326},"Kennis blijft intern","Jullie engineers begrijpen de oplossing en de belangrijkste afwegingen.\n",{"title":1328,"text":1329},"Geen extra afhankelijkheid","Na de rescue hoeft 9to5 niet permanent onderdeel van het team te blijven.\n",{"intro":1331},"Soms heb je geen extra team nodig. Je hebt iemand nodig die één ingewikkeld technisch probleem snel doorgrondt, het samen met je engineers oplost en daarna weer vertrekt. Daar stappen wij graag in.\n",{},"\u002Fuse-cases\u002Fdevelopmentteam-loopt-vast-met-ai",{"intro":1335,"causes":1336},"AI-projecten combineren meerdere disciplines. Zelfs een sterk developmentteam hoeft niet op ieder specialistisch onderdeel direct ervaring te hebben.\n",[1337,1340,1343],{"title":1338,"text":1339},"Het probleem is multidisciplinair","Softwarearchitectuur, modellen, data, integraties en observability raken elkaar.\n",{"title":1341,"text":1342},"Ervaring ontbreekt met deze specifieke failure mode","Sommige problemen zijn veel sneller op te lossen wanneer je ze eerder hebt gezien.\n",{"title":1344,"text":1345},"Intern experimenteren wordt duur","Na meerdere mislukte routes kost verder zoeken meer dan tijdelijk specialistische hulp.\n",{"intro":1347,"points":1348},"Zo willen wij werken: senior engineering inzetten waar het moeilijk wordt en weer vertrekken zodra het eigen team verder kan.\n",[1349,1352,1355],{"title":1350,"text":1351},"Engineers werken met engineers","Geen advieslaag tussen het probleem en de mensen die de code daadwerkelijk aanpassen.\n",{"title":1353,"text":1354},"Bestaande stack blijft uitgangspunt","We voeren niet standaard een nieuwe tool of architectuur in.\n",{"title":1356,"text":1357},"Overdracht vanaf het begin","De oplossing wordt niet onnodig afhankelijk van degene die hem heeft gebouwd.\n",{"intro":1359,"signals":1360},"Een goed softwareteam heeft niet vanzelf alle ervaring met agents, LLM's, agentic coding (Claude Code, Codex) en productie-AI in huis.\n",[1361,1364,1367,1370],{"title":1362,"text":1363},"Het team blijft op hetzelfde probleem terugkomen","Er worden verschillende oplossingen geprobeerd zonder structurele doorbraak.\n",{"title":1365,"text":1366},"AI-specifieke keuzes blijven onzeker","Modelgedrag, evals, agentarchitectuur of retrieval vragen andere ervaring.\n",{"title":1368,"text":1369},"Een integratie blijkt veel lastiger dan verwacht","Het probleem zit op de grens tussen bestaande software en de nieuwe AI-functionaliteit.\n",{"title":1371,"text":1372},"Een senior hire is disproportioneel","Je hebt specifieke expertise nu nodig, maar niet per se permanent.\n",{"intro":1374},"Als het probleem voldoende scherp is, stappen we met een Rescue Sprint direct naast het team in. We werken in de bestaande codebase, lossen de blokkade op en dragen de relevante kennis mee over. Bij een onduidelijke hoofdoorzaak beginnen we eerst met een audit.\n",{"buyerTriggerKeys":1376,"primaryOfferKey":74,"offerKeys":1377,"caseKeys":1378,"relatedUseCaseKeys":1379},[35],[74,73],[],[66,60],{"title":1381,"description":1382},"Developmentteam loopt vast met AI | 9to5 software","Developmentteam vast met AI-agents of agentic coding (Claude Code, Codex)? 9to5 stapt tijdelijk in, lost het technische stuk op en draagt het weer over.\n","use-cases\u002Fdevelopmentteam-loopt-vast-met-ai","Het team kan prima software bouwen, maar mist specifieke senior ervaring om een lastig AI-probleem technisch goed op te lossen.\n",{"hero":83,"problem":210,"proof":84},"e_yVBDKQwBGTMsdGXyRB9tXebXYZGwp2YK9ooOvu2qg",{"id":1388,"title":1389,"body":1390,"description":26,"desiredOutcome":1394,"extension":32,"hero":1406,"key":66,"meta":1408,"navigation":38,"path":1409,"problem":1410,"proof":1422,"recognition":1434,"recommendedApproach":1449,"relations":1451,"seo":1456,"stem":1459,"summary":1460,"visuals":1461,"__hash__":1462},"useCases_nl\u002Fuse-cases\u002Ftechnische-second-opinion-ai.md","We willen een onafhankelijke technische second opinion",{"type":23,"value":1391,"toc":1392},[],{"title":26,"searchDepth":27,"depth":27,"links":1393},[],{"intro":1395,"items":1396},"Je wilt geen extra mening om de discussie groter te maken. Je wilt voldoende technische duidelijkheid om zelf een betere beslissing te nemen.\n",[1397,1400,1403],{"title":1398,"text":1399},"Feiten en aannames uit elkaar","Je ziet welke technische conclusies hard zijn en waar nog onzekerheid zit.\n",{"title":1401,"text":1402},"Alternatieven worden zichtbaar","Je weet of de voorgestelde route echt de enige logische optie is.\n",{"title":1404,"text":1405},"Een concrete volgende beslissing","Na de review weet je wat je moet onderzoeken, behouden, aanpassen of juist laten.\n",{"intro":1407},"Misschien zegt je leverancier dat alles opnieuw moet. Misschien denkt je eigen team juist dat het prima zit. Als er veel geld of risico aan de volgende stap hangt, kan een onafhankelijke technische blik veel opleveren.\n",{},"\u002Fuse-cases\u002Ftechnische-second-opinion-ai",{"intro":1411,"causes":1412},"Technische keuzes zijn niet volledig objectief. Iedereen kijkt vanuit eigen ervaring, belangen en voorkeuren naar dezelfde situatie.\n",[1413,1416,1419],{"title":1414,"text":1415},"Leveranciers kennen vooral hun eigen gereedschap","Een voorstel kan onbewust sturen naar oplossingen die goed bij de leverancier passen.\n",{"title":1417,"text":1418},"Bestaande teams raken gewend aan beperkingen","Wat intern normaal voelt, kan voor een buitenstaander een duidelijke technische schuld zijn.\n",{"title":1420,"text":1421},"Grote besluiten worden te vroeg definitief","Soms ontbreekt nog bewijs voor aannames waarop een ingrijpende keuze wordt gebaseerd.\n",{"intro":1423,"points":1424},"Een goede second opinion verkoopt niet automatisch een groter vervolgtraject. Het resultaat mag ook gewoon zijn dat de bestaande route prima is.\n",[1425,1428,1431],{"title":1426,"text":1427},"Engineers first","De beoordeling wordt gedaan vanuit technische uitvoerbaarheid en risico.\n",{"title":1429,"text":1430},"Build, buy of niets veranderen","We hebben geen belang bij één specifieke technische uitkomst.\n",{"title":1432,"text":1433},"Vervolg is niet verplicht","Als de conclusie duidelijk is, kan het traject daar gewoon eindigen.\n",{"intro":1435,"signals":1436},"Een second opinion is vooral zinvol wanneer de volgende technische stap groot, duur of moeilijk terug te draaien is.\n",[1437,1440,1443,1446],{"title":1438,"text":1439},"Een leverancier wil veel opnieuw bouwen","Je wilt weten of dat technisch noodzakelijk is of vooral de makkelijkste route voor hen.\n",{"title":1441,"text":1442},"Interne meningen lopen uiteen","Verschillende engineers beoordelen dezelfde risico's anders.\n",{"title":1444,"text":1445},"De architectuur voelt ingewikkelder dan nodig","Er worden veel nieuwe tools, platforms of lagen voorgesteld.\n",{"title":1447,"text":1448},"Je staat voor een grote investering","Voor je doorgaat wil je weten of de technische fundering logisch is.\n",{"intro":1450},"De Vibe Code Rescue Audit past hier als onafhankelijke technische review. We bekijken wat er daadwerkelijk staat, toetsen de belangrijkste aannames en geven een concrete technische debrief. Vervolgwerk is alleen nodig als daar inhoudelijk aanleiding voor is.\n",{"buyerTriggerKeys":1452,"primaryOfferKey":73,"offerKeys":1453,"caseKeys":1454,"relatedUseCaseKeys":1455},[35],[73,74],[],[67,70],{"title":1457,"description":1458},"Technische second opinion voor AI-project | 9to5 software","Onafhankelijke technische second opinion nodig voor een AI-oplossing, architectuur of leverancier? Senior engineers van 9to5 beoordelen wat er ligt.\n","use-cases\u002Ftechnische-second-opinion-ai","Er ligt al een architectuur, oplossing of voorstel, maar je wilt weten of de technische keuzes logisch zijn voordat je verder investeert.\n",{"hero":210,"problem":327,"proof":211},"U88B-bQ-O0S74WDL1Ctxh2XEx8C-g2fhRzY_iWFctXU",{"id":1464,"title":1465,"body":1466,"description":26,"desiredOutcome":1470,"extension":32,"hero":1482,"key":67,"meta":1484,"navigation":38,"path":1485,"problem":1486,"proof":1498,"recognition":1510,"recommendedApproach":1525,"relations":1527,"seo":1532,"stem":1535,"summary":1536,"visuals":1537,"__hash__":1538},"useCases_nl\u002Fuse-cases\u002Fai-project-overnemen-van-andere-leverancier.md","Een andere leverancier heeft iets achtergelaten waar we niet goed mee verder kunnen",{"type":23,"value":1467,"toc":1468},[],{"title":26,"searchDepth":27,"depth":27,"links":1469},[],{"intro":1471,"items":1472},"Het systeem moet ook te begrijpen zijn voor anderen dan de partij die het heeft gebouwd.\n",[1473,1476,1479],{"title":1474,"text":1475},"Technische grip terug","Architectuur, deployment, data en externe afhankelijkheden zijn weer inzichtelijk.\n",{"title":1477,"text":1478},"Risico's zijn geprioriteerd","Je weet welke onderdelen prima zijn en waar eerst werk nodig is.\n",{"title":1480,"text":1481},"Het project wordt weer overdraagbaar","Jullie team of een nieuwe leverancier kan verantwoord verder ontwikkelen.\n",{"intro":1483},"De oorspronkelijke ontwikkelaar is weg, de documentatie is dun en iedere wijziging begint met de vraag: weet iemand hoe dit werkt? We kunnen instappen, reconstrueren wat er staat en zorgen dat jullie weer vooruit kunnen.\n",{},"\u002Fuse-cases\u002Fai-project-overnemen-van-andere-leverancier",{"intro":1487,"causes":1488},"Software overnemen is meer dan toegang krijgen tot de Git-repository.\n",[1489,1492,1495],{"title":1490,"text":1491},"Kennis zat bij mensen, niet in het systeem","Architectuur en operationele keuzes zijn nooit voldoende gedocumenteerd.\n",{"title":1493,"text":1494},"Eigenaarschap is versnipperd","Code, infrastructuur, accounts en data kunnen bij verschillende partijen liggen.\n",{"title":1496,"text":1497},"De technische kwaliteit is nog onbekend","Je weet niet wat gewoon onbekend voelt en wat daadwerkelijk een risico vormt.\n",{"intro":1499,"points":1500},"Instappen in bestaande software hoort bij senior engineering. Je hoeft het systeem niet zelf gebouwd te hebben om er weer structuur en grip in te brengen.\n",[1501,1504,1507],{"title":1502,"text":1503},"We beginnen bij wat er is","Een andere leverancier is geen reden om meteen opnieuw te bouwen.\n",{"title":1505,"text":1506},"Code én operatie","Deployment, accounts en integraties horen net zo goed bij de overdracht.\n",{"title":1508,"text":1509},"Nieuwe afhankelijkheid voorkomen","De software moet na onze inzet juist beter overdraagbaar zijn.\n",{"intro":1511,"signals":1512},"Een overdracht kan op papier afgerond zijn terwijl de belangrijkste kennis nog steeds ontbreekt.\n",[1513,1516,1519,1522],{"title":1514,"text":1515},"De repository is er, maar context ontbreekt","Belangrijke keuzes zijn nergens vastgelegd.\n",{"title":1517,"text":1518},"Deployment is een black box","Niemand weet precies welke stappen, accounts of infrastructuur nodig zijn.\n",{"title":1520,"text":1521},"Externe diensten zijn versnipperd","Credentials, providers en beheeraccounts zitten bij verschillende mensen of partijen.\n",{"title":1523,"text":1524},"Iedere wijziging kost eerst onderzoek","Engineers moeten telkens opnieuw reconstrueren hoe functionaliteit in elkaar zit.\n",{"intro":1526},"Met een Vibe Code Rescue Audit reconstrueren we eerst wat er staat en wat nog ontbreekt. Daarna kunnen gerichte technische blokkades in een Rescue Sprint worden aangepakt.\n",{"buyerTriggerKeys":1528,"primaryOfferKey":73,"offerKeys":1529,"caseKeys":1530,"relatedUseCaseKeys":1531},[35],[73,74],[],[66,69],{"title":1533,"description":1534},"AI-project overnemen van andere leverancier | 9to5 software","Vast met software van een vorige leverancier? 9to5 reconstrueert architectuur en code, brengt risico's in kaart en maakt het project weer overdraagbaar.\n","use-cases\u002Fai-project-overnemen-van-andere-leverancier","Er staat software, maar kennis, documentatie of technische grip ontbreekt nadat een andere partij vertrokken is.\n",{"hero":83,"problem":468,"proof":84},"HhtFqFT2V4Jn8hywEwnznQ3oGNciaB7CSzbuUZOeM0A",{"id":1540,"title":1541,"body":1542,"description":26,"desiredOutcome":1546,"extension":32,"hero":1558,"key":68,"meta":1560,"navigation":38,"path":1561,"problem":1562,"proof":1574,"recognition":1586,"recommendedApproach":1601,"relations":1603,"seo":1608,"stem":1611,"summary":1612,"visuals":1613,"__hash__":1614},"useCases_nl\u002Fuse-cases\u002Fai-experiment-heeft-echte-gebruikers.md","Ons experiment is onverwacht succesvol geworden en heeft ineens echte gebruikers",{"type":23,"value":1543,"toc":1544},[],{"title":26,"searchDepth":27,"depth":27,"links":1545},[],{"intro":1547,"items":1548},"Je wilt de groei niet afremmen, maar ook niet wachten tot de eerste serieuze storing, securityfout of kostenexplosie je dwingt om in te grijpen.\n",[1549,1552,1555],{"title":1550,"text":1551},"De grootste risico's onder controle","Security, data, deployment en betrouwbaarheid krijgen de aandacht die bij echt gebruik hoort.\n",{"title":1553,"text":1554},"Groei blijft beheersbaar","Meer gebruikers betekent niet automatisch evenredig meer technische problemen.\n",{"title":1556,"text":1557},"Het experiment kan product worden","De belangrijkste prototypeshortcuts worden bewust behouden of vervangen.\n",{"intro":1559},"Goed nieuws: mensen willen je product gebruiken. Minder goed nieuws: de software was daar nog helemaal niet voor gebouwd. We helpen voorkomen dat onverwacht succes een technisch incident wordt.\n",{},"\u002Fuse-cases\u002Fai-experiment-heeft-echte-gebruikers",{"intro":1563,"causes":1564},"Prototypekeuzes zijn gemaakt voor snelheid van leren. Succes verandert plotseling de eisen waaraan dezelfde software moet voldoen.\n",[1565,1568,1571],{"title":1566,"text":1567},"Operationele eisen kwamen later","Monitoring, backups, support en schaalbaarheid waren tijdens het experiment logisch genoeg geen prioriteit.\n",{"title":1569,"text":1570},"De gebruikerspopulatie verandert","Echte gebruikers doen dingen die het oorspronkelijke testteam nooit bedacht.\n",{"title":1572,"text":1573},"Businesswaarde verhoogt technisch risico","Zodra mensen afhankelijk worden van het systeem, krijgt uitval een andere impact.\n",{"intro":1575,"points":1576},"We maken niet automatisch alles enterprise-grade. Het gaat erom te bepalen welke engineering nu nodig is om verantwoord verder te kunnen groeien.\n",[1577,1580,1583],{"title":1578,"text":1579},"Risicogestuurd professionaliseren","We pakken eerst aan wat gebruikers, data of continuïteit werkelijk bedreigt.\n",{"title":1581,"text":1582},"Prototypekennis behouden","Werkende onderdelen worden niet vervangen alleen omdat ze als experiment begonnen.\n",{"title":1584,"text":1585},"Klaar voor de volgende fase","De technische basis groeit mee met het werkelijke productgebruik.\n",{"intro":1587,"signals":1588},"De techniek is vaak prima, maar gebouwd voor een heel andere schaal en verwachting.\n",[1589,1592,1595,1598],{"title":1590,"text":1591},"Er komen ineens supportvragen","Gebruikers verwachten beschikbaarheid en voorspelbaar gedrag.\n",{"title":1593,"text":1594},"Accounts en rechten worden belangrijk","Wat eerst één intern experiment was, krijgt verschillende gebruikers en rollen.\n",{"title":1596,"text":1597},"Kosten beginnen op te vallen","Model- en infrastructuurverbruik groeit ineens mee met echt gebruik.\n",{"title":1599,"text":1600},"Je bent bang om grote veranderingen te doen","De software is inmiddels belangrijk genoeg dat downtime of dataverlies pijn doet.\n",{"intro":1602},"Een Vibe Code Rescue Audit helpt eerst bepalen wat nu werkelijk urgent is. Daarna kunnen we kiezen tussen gerichte Rescue Sprints en een groter Build & Integrate-traject om het product verder te professionaliseren.\n",{"buyerTriggerKeys":1604,"primaryOfferKey":73,"offerKeys":1605,"caseKeys":1606,"relatedUseCaseKeys":1607},[35],[73,75],[],[55,69],{"title":1609,"description":1610},"AI-experiment heeft ineens echte gebruikers | 9to5 software","AI-experiment onverwacht succesvol? 9to5 helpt je prototype veilig, betrouwbaar en onderhoudbaar opschalen naar echt gebruik.\n","use-cases\u002Fai-experiment-heeft-echte-gebruikers","Wat begon als experiment wordt daadwerkelijk gebruikt. Nu moet de techniek sneller volwassen worden dan oorspronkelijk gepland.\n",{"hero":469,"problem":1155,"proof":621},"jr8Nf2XXYwM4SLSizR0BRe2EycBwMHk3WeUMwvnaWDo",{"id":1616,"title":1617,"body":1618,"description":26,"desiredOutcome":1622,"extension":32,"hero":1634,"key":69,"meta":1636,"navigation":38,"path":1637,"problem":1638,"proof":1650,"recognition":1662,"recommendedApproach":1677,"relations":1679,"seo":1684,"stem":1687,"summary":1688,"visuals":1689,"__hash__":1690},"useCases_nl\u002Fuse-cases\u002Fprototype-naar-onderhoudbaar-softwareproduct.md","We willen van prototype naar een onderhoudbaar softwareproduct",{"type":23,"value":1619,"toc":1620},[],{"title":26,"searchDepth":27,"depth":27,"links":1621},[],{"intro":1623,"items":1624},"Opnieuw beginnen hoeft niet. Je wilt vooral een technische basis waarop een normaal developmentteam verantwoord kan blijven doorbouwen.\n",[1625,1628,1631],{"title":1626,"text":1627},"Begrijpelijke architectuur","Het is duidelijk waar verantwoordelijkheden en businesslogica thuishoren.\n",{"title":1629,"text":1630},"Veilige ontwikkelcyclus","Tests, deployment en foutafhandeling ondersteunen regelmatig veranderen.\n",{"title":1632,"text":1633},"Minder kennis in hoofden","Belangrijke technische keuzes en processen zijn voldoende gedocumenteerd.\n",{"intro":1635},"Een prototype moet vooral snel antwoord geven op de vraag: werkt het idee? Een softwareproduct moet daarnaast begrijpelijk blijven, wijzigingen overleven en door meer dan één persoon onderhouden kunnen worden.\n",{},"\u002Fuse-cases\u002Fprototype-naar-onderhoudbaar-softwareproduct",{"intro":1639,"causes":1640},"Prototypecode is geoptimaliseerd voor snelheid van leren. Productsoftware moet daarnaast geoptimaliseerd zijn voor verandering.\n",[1641,1644,1647],{"title":1642,"text":1643},"Architectuur liep achter op productontwikkeling","Het prototype groeide organisch terwijl requirements steeds veranderden.\n",{"title":1645,"text":1646},"Tijdelijke aannames werden structureel","Keuzes die voor een experiment logisch waren, bepalen nu hoe het hele product werkt.\n",{"title":1648,"text":1649},"Onderhoudbaarheid was nog geen succescriterium","Tests, documentatie en duidelijke grenzen leverden tijdens de eerste validatie weinig directe waarde.\n",{"intro":1651,"points":1652},"9to5 software combineert AI met gewone senior software engineering. Dat is juist relevant wanneer een slim prototype een duurzaam product moet worden.\n",[1653,1656,1659],{"title":1654,"text":1655},"Behouden wat werkt","Rewrite is één mogelijke keuze, geen standaardantwoord.\n",{"title":1657,"text":1658},"Onderhoudbaarheid is praktisch","We richten ons op veiliger wijzigen, testen en releasen.\n",{"title":1660,"text":1661},"Gebouwd voor het volgende team","Software moet ook zonder de oorspronkelijke bouwer begrijpelijk blijven.\n",{"intro":1663,"signals":1664},"Veel prototypecode is helemaal niet slecht. Alleen zie je steeds duidelijker waar snelheid boven onderhoudbaarheid is gekozen.\n",[1665,1668,1671,1674],{"title":1666,"text":1667},"Tijdelijke oplossingen zijn permanent geworden","Scripts, hardcoded waarden en shortcuts worden inmiddels door echte flows gebruikt.\n",{"title":1669,"text":1670},"Nieuwe features kosten steeds meer moeite","De bestaande structuur past niet goed meer bij wat het product is geworden.\n",{"title":1672,"text":1673},"Slechts één persoon begrijpt kritieke onderdelen","Kennisoverdracht wordt moeilijk en veranderingen voelen risicovol.\n",{"title":1675,"text":1676},"Releases zijn grotendeels handwerk","Deployment en configuratie vragen stappen die makkelijk vergeten of verkeerd gedaan worden.\n",{"intro":1678},"Met een Vibe Code Rescue Audit bepalen we wat een goede basis vormt en wat ontwikkeling werkelijk belemmert. Daarna kan Build & Integrate de grotere professionalisering uitvoeren zonder automatisch het hele product opnieuw te bouwen.\n",{"buyerTriggerKeys":1680,"primaryOfferKey":73,"offerKeys":1681,"caseKeys":1682,"relatedUseCaseKeys":1683},[35],[73,75],[],[55,54],{"title":1685,"description":1686},"Prototype naar onderhoudbaar softwareproduct | 9to5 software","Prototype doorontwikkelen tot onderhoudbare software? 9to5 helpt architectuur, code, tests, deployment en documentatie klaar te maken voor langdurig gebruik.\n","use-cases\u002Fprototype-naar-onderhoudbaar-softwareproduct","De kern werkt, maar de software moet zo worden opgebouwd dat een team hem ook over zes of twaalf maanden nog veilig kan veranderen.\n",{"hero":469,"problem":83,"proof":621},"vCQmUkCSu-4lsVBxiPmpL9jUfvmNrYFM4bBcfKAjGd4",{"id":1692,"title":1693,"body":1694,"description":26,"desiredOutcome":1698,"extension":32,"hero":1710,"key":70,"meta":1712,"navigation":38,"path":1713,"problem":1714,"proof":1726,"recognition":1737,"recommendedApproach":1752,"relations":1754,"seo":1759,"stem":1762,"summary":1763,"visuals":1764,"__hash__":1765},"useCases_nl\u002Fuse-cases\u002Fweg-bij-ai-platform-of-leverancier.md","We willen weg bij een AI-platform of leverancier maar zitten technisch vast",{"type":23,"value":1695,"toc":1696},[],{"title":26,"searchDepth":27,"depth":27,"links":1697},[],{"intro":1699,"items":1700},"Je wilt dat de leverancier weer een technische keuze wordt, in plaats van een voorwaarde voor het voortbestaan van je product.\n",[1701,1704,1707],{"title":1702,"text":1703},"Zicht op echte afhankelijkheden","Je weet welke data, functionaliteit en workflows specifiek aan de leverancier vastzitten.\n",{"title":1705,"text":1706},"Een realistische migratieroute","Niet alles hoeft in één risicovolle big bang te worden vervangen.\n",{"title":1708,"text":1709},"Meer technische keuzevrijheid","De nieuwe architectuur maakt toekomstige veranderingen eenvoudiger.\n",{"intro":1711},"Een platform dat in het begin snelheid gaf, kan later juist beperken. Misschien zijn de kosten te hoog, mist functionaliteit of wil je meer controle. Wij zoeken uit hoe diep de afhankelijkheid werkelijk zit en hoe je er gecontroleerd uitkomt.\n",{},"\u002Fuse-cases\u002Fweg-bij-ai-platform-of-leverancier",{"intro":1715,"causes":1716},"Vendor lock-in zit zelden in één API-call. Afhankelijkheden kunnen verspreid zijn over data, code, infrastructuur en operationele processen.\n",[1717,1720,1723],{"title":1718,"text":1719},"Gemak verbergt technische keuzes","Managed platforms combineren meerdere functies waardoor grenzen pas zichtbaar worden wanneer je wilt vertrekken.\n",{"title":1721,"text":1722},"Proprietary functionaliteit groeit mee","Hoe langer het platform wordt gebruikt, hoe meer specifieke features onderdeel van het product worden.\n",{"title":1724,"text":1725},"Migratierisico wordt te groot","Uiteindelijk durft niemand meer te veranderen omdat niet duidelijk is wat er allemaal geraakt wordt.\n",{"intro":1727,"points":1728},"We zijn niet gebonden aan één modelprovider of AI-platform. De techniek moet het product dienen, niet andersom.\n",[1729,1732,1734],{"title":1730,"text":1731},"Onafhankelijk technisch advies","We beoordelen behouden, migreren en vervangen als echte alternatieven.\n",{"title":411,"text":1733},"We kunnen adapters en migratielagen bouwen waar een gefaseerde overstap slimmer is.\n",{"title":1735,"text":1736},"Lock-in bewust terugbrengen","De nieuwe situatie moet meer keuzevrijheid opleveren dan de oude.\n",{"intro":1738,"signals":1739},"Lock-in wordt vaak pas zichtbaar op het moment dat je daadwerkelijk iets wilt veranderen.\n",[1740,1743,1746,1749],{"title":1741,"text":1742},"Data exporteren blijkt lastig","Belangrijke informatie zit in proprietary opslag of formaten.\n",{"title":1744,"text":1745},"Workflows gebruiken specifieke platformfeatures","De functionaliteit is niet eenvoudig één-op-één elders beschikbaar.\n",{"title":1747,"text":1748},"Kosten of voorwaarden veranderen","Het platform is niet meer zo aantrekkelijk als toen je begon.\n",{"title":1750,"text":1751},"Niemand weet hoe groot een migratie wordt","Eigen code en leveranciersfunctionaliteit zijn in de loop van tijd door elkaar gaan lopen.\n",{"intro":1753},"Met een Vibe Code Rescue Audit brengen we afhankelijkheden en migratierisico's eerst in kaart. Daarna kan Build & Integrate een gecontroleerde migratie uitvoeren wanneer dat de verstandigste route blijkt.\n",{"buyerTriggerKeys":1755,"primaryOfferKey":73,"offerKeys":1756,"caseKeys":1757,"relatedUseCaseKeys":1758},[35],[73,75],[],[63,66],{"title":1760,"description":1761},"Weg bij AI-platform of leverancier | 9to5 software","Last van vendor lock-in bij OpenAI of een ander AI-platform? 9to5 brengt afhankelijkheden in kaart en migreert modellen, data en workflows gecontroleerd.\n","use-cases\u002Fweg-bij-ai-platform-of-leverancier","De huidige leverancier, tool of AI-platform past niet meer, maar data, workflows of technische afhankelijkheden maken overstappen lastig.\n",{"hero":468,"problem":210,"proof":346},"e-Qt0u7NsG_2lyGw8MGg0scaPo3jmQodLXZNb35MgK4",{"id":1767,"title":1768,"body":1769,"description":26,"desiredOutcome":1773,"extension":32,"hero":1785,"key":71,"meta":1787,"navigation":38,"path":1788,"problem":1789,"proof":1801,"recognition":1813,"recommendedApproach":1828,"relations":1830,"seo":1835,"stem":1838,"summary":1839,"visuals":1840,"__hash__":1841},"useCases_nl\u002Fuse-cases\u002Fvibe-code-project-vastgelopen.md","We hebben onszelf in een hoek gevibecoded",{"type":23,"value":1770,"toc":1771},[],{"title":26,"searchDepth":27,"depth":27,"links":1772},[],{"intro":1774,"items":1775},"Je wilt niet stoppen met AI-assisted development. Je wilt weer kunnen bouwen zonder dat iedere wijziging een nieuw technisch risico introduceert.\n",[1776,1779,1782],{"title":1777,"text":1778},"Weer grip op de codebase","Je begrijpt hoe de belangrijkste onderdelen samenhangen en waar je veilig wijzigingen kunt doen.\n",{"title":1780,"text":1781},"Veranderen zonder roulette","Nieuwe features hoeven niet meer onverwacht andere delen van de applicatie kapot te maken.\n",{"title":1783,"text":1784},"Zelf weer verder kunnen","De technische basis en werkwijze zijn duidelijk genoeg om daarna opnieuw zelfstandig met AI-tools door te bouwen.\n",{"intro":1786},"Eerst voelde het alsof je superkrachten had, met iedere avond een nieuwe feature. Toen kwam het punt waarop de AI vooral nieuwe manieren vond om oude problemen te verplaatsen. Vaak hoeft niet alles opnieuw.\n",{},"\u002Fuse-cases\u002Fvibe-code-project-vastgelopen",{"intro":1790,"causes":1791},"AI-codingtools zijn heel goed in momentum. Maar zonder duidelijke architectuur, tests en technische grenzen kan dat momentum uiteindelijk tegen je werken.\n",[1792,1795,1798],{"title":1793,"text":1794},"Lokale oplossingen stapelen zich op","Iedere prompt lost het probleem van dat moment op, maar houdt niet automatisch rekening met de architectuur van het geheel.\n",{"title":1796,"text":1797},"Technische feedback ontbreekt","Zonder goede tests, types, conventies en deploymentchecks merkt de AI pas laat dat een verandering ergens anders schade veroorzaakt.\n",{"title":1799,"text":1800},"De codebase wordt zelf de bottleneck","Steeds meer context is nodig om een wijziging goed te doen. Daardoor wordt snel bouwen langzaam weer traag en onvoorspelbaar.\n",{"intro":1802,"points":1803},"Hier maakt senior software engineering het verschil: een bestaande codebase begrijpen, technische risico's terugbrengen en zorgen dat het eigen team daarna weer zelfstandig verder kan.\n",[1804,1807,1810],{"title":1805,"text":1806},"We zijn niet tegen vibe coding","Zelf bouwen met AI kan juist heel effectief zijn wanneer de technische basis goed genoeg blijft.\n",{"title":1808,"text":1809},"We beginnen niet automatisch opnieuw","Eerst bepalen wat bruikbaar is, daarna pas besluiten wat echt veranderd moet worden.\n",{"title":1811,"text":1812},"De bedoeling is dat jij weer bouwt","Rescue is geslaagd wanneer je 9to5 daarna niet voor iedere volgende feature nodig hebt.\n",{"intro":1814,"signals":1815},"Vibe coding loopt meestal niet ineens vast. Eerst stapelen kleine technische problemen zich op, totdat steeds meer prompts nodig zijn om nog iets te veranderen.\n",[1816,1819,1822,1825],{"title":1817,"text":1818},"Eén fix breekt iets anders","Een ogenschijnlijk kleine wijziging zorgt ineens voor fouten op plekken waar je niet aan hebt gezeten.\n",{"title":1820,"text":1821},"De AI stelt steeds grotere refactors voor","Voor simpele wijzigingen lijkt volgens de codingtool telkens een flinke verbouwing van de code nodig.\n",{"title":1823,"text":1824},"Niemand weet meer wat leidend is","Er bestaan meerdere implementaties, oude bestanden en half vervangen oplossingen naast elkaar.\n",{"title":1826,"text":1827},"Je durft werkende code nauwelijks aan te raken","Het project werkt nog, maar iedere verandering voelt alsof je iets belangrijks kunt omgooien.\n",{"intro":1829},"Niet blind verder prompten en ook niet automatisch alles opnieuw bouwen. In een Vibe Code Rescue Audit scheiden we goede stukken van tijdelijke oplossingen en structurele risico's. Je krijgt daarna een concrete route: wat kan blijven, wat moet beter en wat echt niet opnieuw hoeft.\n",{"buyerTriggerKeys":1831,"primaryOfferKey":73,"offerKeys":1832,"caseKeys":1833,"relatedUseCaseKeys":1834},[35],[73,74],[],[54,57],{"title":1836,"description":1837},"Vastgelopen met vibe coding? | 9to5 software","Jezelf in een hoek gevibecoded met Lovable, Cursor, Bolt of Replit? 9to5 analyseert je codebase, vindt waar het vastloopt en helpt je verantwoord verder bouwen.\n","use-cases\u002Fvibe-code-project-vastgelopen","Met AI-codingtools ging het eerst razendsnel. Nu maken nieuwe wijzigingen het project vooral ingewikkelder en weet je niet meer hoe je eruit komt.\n",{"hero":83,"problem":327,"proof":84},"MNENOjj2j_neLIuQQzajUhM8RJz2T1naiCTdgk9YQDs",[1843,1906],{"id":1844,"title":1845,"approach":1846,"body":1861,"cta":1865,"description":26,"extension":32,"hero":1868,"key":1870,"label":1871,"meta":1872,"navigation":38,"path":1873,"proof":1874,"relations":1886,"seo":1899,"stem":1902,"summary":1903,"visuals":1904,"__hash__":1905},"buyerTriggers_nl\u002Fbuyer-triggers\u002Fstarten-met-ai.md","We willen met AI aan de slag, maar weten niet goed hoe.",{"title":1847,"steps":1848},"Van vraagstuk naar een verstandige technische route.",[1849,1852,1855,1858],{"title":1850,"text":1851},"Probleem scherp krijgen","We bepalen welk besluit je moet nemen, welk proces je wilt verbeteren en wat een goed resultaat zou zijn.\n",{"title":1853,"text":1854},"Context en systemen begrijpen","We kijken naar bestaande software, data, koppelingen, gebruikers en technische randvoorwaarden.\n",{"title":1856,"text":1857},"Opties toetsen","We vergelijken AI, automatisering, bestaande software, koppelingen en maatwerk op haalbaarheid, risico en waarde.\n",{"title":1859,"text":1860},"Besluit en route opleveren","Je krijgt een concrete technische richting, de belangrijkste risico's en een logische volgende stap.\n",{"type":23,"value":1862,"toc":1863},[],{"title":26,"searchDepth":27,"depth":27,"links":1864},[],{"title":1866,"body":1867},"Twijfel je of AI hier de juiste oplossing is?","Leg kort uit welk idee of proces je in gedachten hebt. Wij zeggen snel wat technisch kansrijk is en wat een verstandige eerste stap is.\n",{"intro":1869},"Misschien heb je een idee, een proces dat slimmer kan of vooral het gevoel dat er met AI meer mogelijk moet zijn. Wij helpen je bepalen wat kansrijk is, waar de risico's zitten en of AI eigenlijk de juiste oplossing is.\n","starten-met-ai","Starten met AI",{},"\u002Fbuyer-triggers\u002Fstarten-met-ai",{"intro":1875,"points":1876},"We adviseren niet vanuit een vaste voorkeur voor AI of maatwerk. Omdat we zelf software bouwen, kunnen we eerlijk beoordelen wat technisch haalbaar en zinvol is, en wat je beter niet bouwt.\n",[1877,1880,1883],{"title":1878,"text":1879},"Engineers kijken naar het echte systeem","We kijken naar het AI-idee, maar ook naar de data, bestaande software, koppelingen en gebruikers.\n",{"title":1881,"text":1882},"AI is een middel, geen verplicht antwoord","Automatisering, bestaande software, een koppeling of niets bouwen zijn net zo goed serieuze opties.\n",{"title":1884,"text":1885},"Advies en uitvoering bij dezelfde mensen","Als bouwen logisch blijkt, kunnen we het vervolg ook zelf uitvoeren. Daardoor blijft het advies realistisch.\n",{"useCaseKeys":1887,"offerKeys":1896,"caseKeys":1898},[1888,1889,1890,1891,1892,1893,1894,1895],"processen-automatiseren-met-ai","interne-ai-assistent-met-eigen-kennis","ai-idee-technisch-haalbaar","is-ai-nodig","ai-betrouwbaar-genoeg","zelf-bouwen-of-software-kopen","ai-toevoegen-aan-bestaand-product","vibe-coding-goed-beginnen",[426,1897,374],"vibe-code-kickstart",[],{"title":1900,"description":1901},"Starten met AI? Van idee naar technische aanpak | 9to5 software","Hulp bij een serieus AI-vraagstuk. AI-agent, ChatGPT, Claude of gewone software? We onderzoeken wat haalbaar is, wat je beter niet bouwt en wat de volgende stap is.\n","buyer-triggers\u002Fstarten-met-ai","We zien kansen voor AI, maar willen eerst weten wat zinvol, haalbaar en technisch verstandig is.\n",{"hero":210,"proof":211,"approach":211},"ED90XkiMgKDATMRHnoYCUOp9gqptNl6rVscs_4R-3_k",{"id":1907,"title":1908,"approach":1909,"body":1924,"cta":1928,"description":26,"extension":32,"hero":1930,"key":419,"label":1932,"meta":1933,"navigation":38,"path":1934,"proof":1935,"relations":1945,"seo":1951,"stem":1954,"summary":1955,"visuals":1956,"__hash__":1958},"buyerTriggers_nl\u002Fbuyer-triggers\u002Fai-laten-bouwen.md","We weten wat we willen. Nu moet het gemaakt worden.",{"title":1910,"steps":1911},"Van duidelijke scope naar iets dat echt werkt.",[1912,1915,1918,1921],{"title":1913,"text":1914},"Scope en succescriteria scherpzetten","We maken concreet wat er moet werken, voor wie en wanneer het goed genoeg is om live te gaan.\n",{"title":1916,"text":1917},"Architectuur en integraties neerzetten","We bepalen hoe AI, data, bestaande software, rechten en koppelingen technisch samen moeten werken.\n",{"title":1919,"text":1920},"Bouwen en testen","We bouwen het lastige stuk en testen niet alleen de happy flow, maar ook betrouwbaarheid, fouten en menselijke controle waar nodig.\n",{"title":1922,"text":1923},"In productie en overdragen","We zetten het goed live, documenteren de belangrijke keuzes en zorgen dat jullie team zelfstandig verder kan.\n",{"type":23,"value":1925,"toc":1926},[],{"title":26,"searchDepth":27,"depth":27,"links":1927},[],{"title":348,"body":1929},"Leg uit wat er moet komen en met welke systemen het moet samenwerken. Wij zeggen snel hoe we het technisch goed neerzetten en wat een logische eerste stap is.\n",{"intro":1931},"Je weet wat er moet komen. Wij helpen het technisch goed neerzetten, koppelen aan wat er al is en betrouwbaar in productie krijgen, met Claude, ChatGPT\u002FOpenAI, Codex of MCP als dat past. We stappen in, bouwen, documenteren en dragen over, zonder dat je eindeloos capaciteit inkoopt.\n","AI laten bouwen",{},"\u002Fbuyer-triggers\u002Fai-laten-bouwen",{"intro":1936,"points":1937},"AI is pas echt nuttig als het samenwerkt met bestaande software, data en bedrijfsprocessen. Dat bouwen we als software engineering, niet als losse demo.\n",[1938,1940,1943],{"title":411,"text":1939},"API's, databases, rechten en bestaande systemen zijn onderdeel van de oplossing, geen bijzaak naast de AI.\n",{"title":1941,"text":1942},"Betrouwbaar, niet alleen de happy flow","We testen ook fouten, grensgevallen en menselijke controle waar dat nodig is.\n",{"title":414,"text":1944},"Het werk is klaar wanneer de oplossing live, gedocumenteerd en beheersbaar is voor jullie team.\n",{"useCaseKeys":1946,"offerKeys":1949,"caseKeys":1950},[355,356,357,358,421,422,1947,1948,423,424],"ai-prototype-laten-bouwen","product-goed-opzetten-voor-ai-development",[75,374,1897],[],{"title":1952,"description":1953},"AI-agent laten bouwen en integreren | 9to5 software","Laat een AI-agent, MCP-koppeling, assistent of automatisering bouwen met Claude, ChatGPT\u002FOpenAI of Codex door senior engineers. Van scope naar productie.\n","buyer-triggers\u002Fai-laten-bouwen","Het probleem en de richting zijn duidelijk. Nu moet het technisch goed gebouwd, gekoppeld en in productie gebracht worden.\n",{"hero":469,"proof":1957,"approach":1957},"ls-system-assemble","NUZ5J4zqBZP7crSgphjFA84QZYWPl4FEG-W7g6XU7s4",[],{"id":1961,"title":1962,"extension":1963,"items":1964,"meta":1977,"stem":1978,"__hash__":1979},"why9to5_nl\u002Fnl\u002Fshared\u002Fwhy-9to5.yml","Waarom 9to5?","yml",[1965,1968,1971,1974],{"label":1966,"value":1967},"Senior engineering","AI + software engineering",{"label":1969,"value":1970},"Bestaande software","We stappen in waar het ingewikkeld wordt",{"label":1972,"value":1973},"Productie-ready","Bouwen, testen en betrouwbaar neerzetten",{"label":1975,"value":1976},"Overdracht","Documenteren en weer zelfstandig verder",{},"nl\u002Fshared\u002Fwhy-9to5","bvI687b-UfDT6U3P4H__Ibf_0rdU9-yHqqmVYMWPl3A",1792049913870]