Data & AI engineer met ervaring bij NLR en de Politie. Gemodelleerde warehouses, geteste pipelines en AI-systemen in een omgeving waar zorgvuldig omgaan met vertrouwelijke en privacygevoelige data essentieel is.
Dagelijks aan het werk met technologie zoals
Werken met gevoelige data, complexe data en mensen zonder technische achtergrond. Drie plekken waar ik dit in de praktijk bracht.

- 2024
Data Specialist - Cryptocurrency
Politie Noord-Holland
Data-analyse, automatisering en AI binnen het strafrecht — binnen harde eisen aan privacy en informatiebeveiliging, waar privacy by design het uitgangspunt is en geen bijlage.
- 2023
Data Engineer
Nederlands Lucht- en Ruimtevaartcentrum (NLR)
Uiteenlopende dataprojecten gebouwd in een onderzoeksomgeving waar de cijfers worden nagerekend — en de pipelines erachter dat moeten kunnen dragen.
- Sinds 2020
Course Instructor
Udemy
Cursussen die complexe techniek uitleggen aan mensen zonder technische achtergrond: 241 cursisten met een 4.2-rating. Een dashboard dat niemand begrijpt is geen dashboard — en dat geldt ook voor een overdracht.
Een digital-twin voor deze site: een LangGraph-agent over mijn cv, projecten en artikelen die antwoorden met bron streamt, weigert zonder bron, onder een dagelijkse kostenlimiet blijft en op mijn goedkeuring wacht voordat hij namens mij handelt.
Guards vóór tokens
Screening op prompt injection, PII en off-topic draait in gewone Python voordat er één token wordt uitgegeven — elke guard is fail closed, crasht nooit.
Mens in de lus
Een bericht namens mij opstellen is hoog risico: de graaf onderbreekt, zet het in de wachtrij voor mijn goedkeuring en meldt de bezoeker dat het op beoordeling wacht.
Evaluaties bewaken elke wijziging
Twee gelabelde datasets tegen de echte agent — toolselectie ≥ 95%, taakvoltooiing ≥ 90% — met failure injection om te bewijzen dat de retries standhouden.
# one chat turn as a state machine; only generate() calls a model graph.add_edge(START, "guard_input")+ graph.add_conditional_edges("guard_input", route, ["refuse", "generate"]) graph.add_conditional_edges("generate", route,+ ["request_approval", "execute_tools", "verify"])+ if budget.exceeded or tool_rounds >= MAX_TOOL_ROUNDS: return refuse() # interrupt: Ruud approves graph.add_edge("request_approval", "execute_tools") + if not citations and len(answer) > 240: flags += ["uncited-answer"]Vier gewoontes die in elk project op deze site terugkomen — en in de code erachter.
De meeste AI- en rapportageprojecten stranden op de data, niet op het model. Ik begin bij de grain, de definities en de tests — en pas daarna bij wat erbovenop komt.
Bij de politie en in de luchtvaart werk je binnen harde eisen aan privacy en informatiebeveiliging. Privacy by design is bij mij het startpunt, geen bijzaak.
Sinds 2020 leg ik op Udemy complexe techniek uit aan mensen zonder technische achtergrond: 241 cursisten met een 4.2-rating. Datzelfde doe ik met stakeholders en collega's.
Tests, CI en documentatie horen bij elk project — kijk in de repo's. Het doel is werk waar een team zelf mee verder kan, niet werk dat van mij afhangt.
Eerst het fundament
De meeste AI- en rapportageprojecten stranden op de data, niet op het model. Ik begin bij de grain, de definities en de tests — en pas daarna bij wat erbovenop komt.
Gewend aan strenge kaders
Bij de politie en in de luchtvaart werk je binnen harde eisen aan privacy en informatiebeveiliging. Privacy by design is bij mij het startpunt, geen bijzaak.
Uitleggen ís het vak
Sinds 2020 leg ik op Udemy complexe techniek uit aan mensen zonder technische achtergrond: 241 cursisten met een 4.2-rating. Datzelfde doe ik met stakeholders en collega's.
Getest, gedocumenteerd, overdraagbaar
Tests, CI en documentatie horen bij elk project — kijk in de repo's. Het doel is werk waar een team zelf mee verder kan, niet werk dat van mij afhangt.
Ik sta open voor een nieuwe rol in data engineering en AI. Stuur me een bericht, of connect op LinkedIn.