← Projecten

AI Assessment Engine

Mathijs Bronsdijk built an AI-powered assessment report system for an executive search firm. The system processes ~10 assessment input files per candidate through a 4-phase AI pipeline and writes human-quality reports trained on real consultant work, reducing report writing from a full day to under 5 minutes. Runs on a serverless stack with Next.js, Python, and PostgreSQL.

Een AI-systeem dat assessment rapporten schrijft op het niveau van een senior consultant. Gebouwd voor een executive search bureau. De consultant uploadt de bronbestanden, drukt op start, en heeft vijf minuten later een rapport klaarstaan dat voorheen een halve tot hele dag werk was.

Live

~10

Bronbestanden

4

Pipeline Fases

5 min

Per Rapport

NL + EN

Taalondersteuning

Waarom dit project

Van een dag schrijfwerk naar vijf minuten

Bij een executive search assessment komt veel kijken. Interviews, persoonlijkheidstests, competentieanalyses, observaties. Allemaal bronnen die samen een beeld vormen van een kandidaat. Van al die input een rapport schrijven dat recht doet aan de persoon kost tijd. Een consultant is daar al snel een halve tot hele dag mee bezig.

De uitdaging zat niet in het samenvatten van data. Dat kan elke AI. Het ging erom dat het rapport leest alsof een ervaren consultant het heeft geschreven. Met gevoel voor de persoon, op het niveau dat je verwacht in executive search. En dat het veilig omgaat met gevoelige persoonsgegevens.

Daarom: een op maat gebouwd systeem. Tien bronbestanden erin, vijf minuten later een rapport eruit in de huisstijl van het bureau. De consultant leest het nog na, voegt eventueel een eigen nuance toe, en stuurt het door. Wat een dag kostte, kost nu een koffiepauze.

Hoe het werkt

Van bestanden tot rapport in 4 fases

01

Extract

De consultant vult een formulier in met de basisgegevens van het assessment en uploadt alle bronbestanden, vaak zo'n tien stuks. PDF's, Word-documenten, PowerPoints en tekstbestanden gaan elk door een eigen parser. Welk type het is wordt automatisch herkend aan de bestandsnaam.

02

Parse

Claude Haiku leest alle bronbestanden en haalt daar de gestructureerde data uit: scores, competenties, observaties en profielgegevens. Een regex fallback vangt edge cases op die het model mist. Competenties worden automatisch herkend en gematcht aan het verwachte framework.

03

Generate

Hier zit het verschil. Claude Sonnet schrijft de rapportsecties op basis van geanonimiseerde voorbeelden van echte rapporten. Het model leert daaruit hoe een consultant schrijft: de toon, de nuance, het gevoel dat erbij hoort. Secties bouwen op elkaar voort. De samenvatting verwijst naar de competentie-analyse, aanbevelingen naar specifieke scores.

04

Assemble

De gegenereerde secties worden samengevoegd in een PowerPoint in de huisstijl van de klant. PowerPoint bewust, zodat de consultant het rapport nog kan nalezen en eigen nuances kan toevoegen voordat het naar de opdrachtgever gaat. Na verwerking worden alle inputbestanden automatisch verwijderd uit de opslag.

Architectuur

6 componenten

Van bestandsdetectie tot rapport output.

Bestandsparsers

Aparte parsers voor PDF, DOCX, PPTX en TXT. Scorekaarten hebben een andere structuur dan interviewverslagen, dus elk type krijgt een eigen aanpak.

Python

Autodetectie

Herkent automatisch welk type assessment document het is op basis van de bestandsnaam. Geen handmatige selectie nodig bij het uploaden.

Pattern Matching

AI Lezer

Leest ongestructureerde tekst en haalt daar scores, competenties en observaties uit. Met een fallback-laag voor documenten met een ongebruikelijke structuur.

Claude Haiku 4.5

Competentie Extractor

Herkent competenties uit bronbestanden en matcht ze aan het verwachte framework. Werkt onafhankelijk van hoe competenties in de verschillende documenten zijn geformuleerd.

Python + AI

Rapport Generator

Schrijft de rapportsecties met echte rapporten als referentie. Secties bouwen op elkaar voort, zodat het geheel leest als een rapport van een consultant, niet als een samenvatting door een machine.

Claude Sonnet 4.6

Rapport Assembler

Voegt alle secties samen in een PowerPoint in de huisstijl van de klant. De consultant kan het rapport nalezen en aanpassen voordat het wordt verstuurd.

python-pptx
Stack

Waar het op draait

Frontend

Next.js op Vercel

De interface waar de consultant het formulier invult, bestanden uploadt en het rapport downloadt wanneer het klaar is.

Backend

Modal (serverless Python)

De volledige verwerkingspipeline draait serverless op Modal. Schaalt automatisch en betaalt alleen voor daadwerkelijk gebruik.

AI Models

Claude Sonnet 4.6 + Haiku 4.5

Sonnet (temperature 0.4) voor rapportgeneratie met few-shot voorbeelden. Haiku voor snelle parsing van inputbestanden. Lage temperature voor consistente, professionele output.

Database

Neon PostgreSQL

Serverless PostgreSQL voor gebruikersbeheer, rapportstatus en verwerkte data. Past bij de volledig serverless architectuur.

Storage

Vercel Blob

Tijdelijke opslag voor de uploads. Alles wordt automatisch verwijderd na verwerking. Bij persoonsgegevens van kandidaten wil je dat.

Document Processing

pdfplumber, python-docx, python-pptx

Elk bestandstype heeft een eigen Python library. Werkt beter dan generieke parsers omdat assessment documenten een specifieke structuur hebben.

Security

HMAC cookies + rate limiting

HMAC-signed cookies voor sessies, rate-limited login om brute force te voorkomen, en webhook verificatie voor veilige communicatie tussen frontend en backend.

Resultaten

Wat het oplevert

Halve dag → 5 min

Tijdsbesparing per rapport

Wat voorheen een halve tot hele dag schrijfwerk was, levert het systeem in vijf minuten op. De consultant hoeft alleen nog na te lezen en eventueel bij te schaven.

Consulentniveau

Schrijfkwaliteit

Getraind op echte rapporten van ervaren consultants. Het systeem schrijft met nuance en gevoel voor de persoon, niet als een samenvatting maar als een assessment.

~10 bestanden

Input per assessment

Interviews, persoonlijkheidstests, competentieanalyses, observaties. Alles wordt verwerkt en samengebracht in één rapport.

Productie

Gebouwd voor een executive search bureau

Draait in productie met authenticatie, versleutelde sessies en automatische opschoning van gevoelige data na verwerking.

Lessons learned

Wat ik hiervan leerde

AI leren schrijven op consulentniveau kost afstemming

Je gooit er niet zomaar data in en krijgt een goed rapport terug. Het model moest leren hoe een senior consultant schrijft: met gevoel voor de persoon, met nuance, op het niveau dat je verwacht bij executive search. Dat betekende echte rapporten als referentie, sectie voor sectie werken in plaats van alles in één keer, en per onderdeel andere voorbeelden. De samenvatting vraagt een andere toon dan de competentie-analyse. Dat afstemmen was het meeste werk, en leverde het meeste op.

Goede extractie bepaalt de output

Het maakt niet uit hoe goed je AI schrijft als de input niet klopt. Tien verschillende bestanden, elk in een ander format, met scores die er net anders uitzien. Dat eerst goed gestructureerd krijgen was meer werk dan verwacht. Maar zonder schone data schrijft het model mooie zinnen over verkeerde cijfers.

Persoonsdata vraagt om een veilige, schaalbare omgeving

Je werkt met assessment data van kandidaten. Dat moet veilig. Bestanden worden verwijderd na verwerking, sessies zijn versleuteld, en de backend draait serverless zodat er niks online staat als het niet nodig is. Die serverless aanpak helpt ook met kosten: nul gebruik, nul kosten. En als er meerdere assessments tegelijk binnenkomen, schaalt het automatisch op.

Links
Mathijs Bronsdijk

Mathijs Bronsdijk

AI Agent & Automation Expert

Bouwt AI agents, agentic workflows en autonome AI-systemen. Helpt bedrijven met AI-strategie en implementatie via MBWorkers.