Naar hoofdinhoud gaan

Overzicht

Locatie en voorkeuren fungeren als filters die de AI-matchingengine richten op vacatures waarvoor de kandidaat daadwerkelijk in aanmerking wil komen. Een briljante technische match is waardeloos als de vacature 200 km verderop is en de kandidaat alleen binnen fietsafstand wil werken. Evenzo is een perfecte vaardigheidsmatch voor een fulltime on-site functie irrelevant als de kandidaat alleen remote contractwerk wil. Door deze voorkeuren te configureren vertelt u Recruitier precies wat het moet zoeken — en wat het moet uitsluiten — zodat elke match die naar boven komt een echte kans is die uw tijd en de aandacht van de kandidaat waard is.

De kandidaatlocatie instellen

Google Maps-keuzelijst met automatisch aanvullen

Wanneer u de locatie van een kandidaat instelt of bijwerkt, biedt Recruitier een Google Maps-keuzelijst met automatisch aanvullen. Terwijl u typt, worden overeenkomende locaties gesuggereerd:
  • Steden: “Amsterdam”, “Rotterdam”, “Utrecht”
  • Wijken: “Amsterdam Zuidoost”, “Rotterdam Centrum”
  • Specifieke adressen: “Keizersgracht 520, Amsterdam”
  • Regio’s: “Randstad”, “Noord-Holland”
Wanneer u een suggestie selecteert, legt het systeem drie stukken gegevens vast:
GegevenDoelVoorbeeld
WeergavenaamMensvriendelijke locatie weergegeven in de UI”Amsterdam, Nederland”
Breedte- en lengtegraadPrecieze coordinaten voor afstandsberekeningen52,3676, 4,9041
Genormaliseerde naamGestandaardiseerd locatieformaat voor consistente weergave”Amsterdam, Noord-Holland, Nederland”
Alle drie worden opgeslagen op het kandidaatprofiel en dienen verschillende doeleinden in de matchingpipeline.
Gebruik locaties op stadsniveau voor de meeste kandidaten. Nauwkeurigheid op straatniveau is zelden nodig voor vacaturematching, en stadsniveau geeft een meer natuurlijke zoekradius. Als een kandidaat op de grens van twee steden woont, kies dan de stad waarmee ze zich het meest identificeren of de stad dichter bij de arbeidsmarkt die ze targeten.

Automatische geocodering

Als u een locatie als tekst invoert zonder de keuzelijst met automatisch aanvullen te gebruiken (bijvoorbeeld bij het direct bewerken van een profiel of wanneer de locatie uit een cv wordt geextraheerd), probeert Recruitier deze automatisch te geocoderen via een meerstappenproces:
1

Nederlandse stedenlijst

De locatiestring wordt eerst gecontroleerd aan de hand van een uitgebreide database van Nederlandse steden. Dit biedt snelle, nauwkeurige resolutie voor het meest voorkomende geval (Nederlandse kandidaten die naar Nederlandse vacatures zoeken).
2

Nominatim API

Als de locatie niet in de Nederlandse stedenlijst wordt gevonden, wordt deze naar de Nominatim-geocodeer-API gestuurd (de open-source geocodeerservice achter OpenStreetMap). Dit verwerkt internationale locaties en minder gangbare Nederlandse adressen.
3

AI-normalisatie

Voor onduidelijke of niet-standaard locatiestrings (bijv. “ergens bij Rotterdam”, “Randstad-gebied”, “bij Schiphol”), probeert AI-gebaseerde normalisatie de locatie te interpreteren en te herleiden naar de meest waarschijnlijke coordinaten.
Als geocodering volledig mislukt (vanwege een volledig onherkenbare locatiestring), wordt de tekst opgeslagen maar is afstandsgebaseerde matching niet beschikbaar totdat geldige coordinaten zijn ingesteld.
Afstandsgebaseerde matching vereist coordinaten. Als de locatie van een kandidaat niet succesvol is geocodeerd (geen breedte-/lengtegraad), slaat de matchingengine het locatiefilter volledig over en toont vacatures ongeacht de afstand. De locatiestrafactor standaard naar 1,0 (geen straf), wat betekent dat verre vacatures niet worden bestraft. Het instellen van een correct geocodeerde locatie zorgt voor relevante geografische resultaten en voorkomt dat uw kandidaat wordt gematcht met vacatures in het hele land wanneer ze alleen lokale kansen willen.

Configuratie van de zoekradius

De zoekradius bepaalt hoe ver van de locatie van de kandidaat de AI moet zoeken naar vacatures. Dit wordt opgegeven in kilometers en is standaard 40 km bij het toevoegen van een nieuwe kandidaat via de uploadwizard. De schuifregelaar loopt van 5 km tot 200 km.

Aanbevolen radiusinstellingen

RadiusTypisch gebruikNederlandse context
10-15 kmStedelijke kandidaten die in hun stad willen blijvenBinnen Amsterdam, binnen Rotterdam
25-30 kmKandidaten die open staan voor nabijgelegen stedenAmsterdam naar Amstelveen/Haarlem, Rotterdam naar Delft
40 kmStandaard. Goed voor stedelijke gebiedenDekt de kern van de Randstad vanuit een centrale locatie
75-100 kmKandidaten die openstaan voor een bredere regioAmsterdam naar Utrecht, Rotterdam naar Eindhoven
150+ kmKandidaten die bereid zijn te reloceren of uitgebreid te reizenLandelijke dekking

Hoe de radius matching beinvloedt (de locatiestraf)

De zoekradius creëert geen harde grens aan de grens. In plaats daarvan definieert het een driezone-scoresysteem met geleidelijke straffen:
Vacatures die zijn gevestigd binnen de gewenste radius van de kandidaat ontvangen de volledige matchscore zonder locatiestraf. Als een kandidaat een radius van 50 km instelt en een vacature 30 km verderop is, ontvangt het een locatiefactor van 1,0 — geen vermindering.Dit is de “sweet spot” waar de kandidaat comfortabel naartoe kan reizen.
Vacatures tussen de gewenste radius en tweemaal de gewenste radius ontvangen een geleidelijk afnemende score. De straf wordt toegepast via lineaire interpolatie:
  • Op exact 1x de radius: factor = 1,0 (geen straf)
  • Op 1,5x de radius: factor = 0,85 (15% straf)
  • Op 1,9x de radius: factor = 0,73 (27% straf)
  • Op exact 2x de radius: factor = 0,7 (30% straf)
Deze geleidelijke aanpak zorgt ervoor dat een goede vacature net buiten de gewenste radius niet volledig verborgen is, terwijl vacatures aan de verre rand van aanvaardbaarheid een betekenisvolle straf ontvangen die hen lager in de rankings plaatst.Voorbeeld: Voor een radius van 50 km krijgt een vacature op 75 km (1,5x) een locatiefactor van 85%. Als de AI deze match op 90% scoorde, zou de eindscore 90% x 0,85 = 76,5% zijn.
Vacatures voorbij tweemaal de gewenste radius worden volledig uitgesloten van zoekresultaten. Ze worden niet opgehaald, niet gescoord en nooit aan u getoond. Voor een radius van 50 km betekent dit dat vacatures voorbij 100 km onzichtbaar zijn.Deze harde grens voorkomt dat het systeem scoringbronnen verspilt aan vacatures die duidelijk te ver weg zijn.
De standaard zoekradius is 40 km bij het toevoegen van een nieuwe kandidaat via de wizard. Voor de meeste kandidaten in Nederland dekt dit hun lokale stedelijk gebied en omliggende steden. Voor een kandidaat gevestigd in Amsterdam met een radius van 40 km dekt dit Amsterdam, Haarlem, Hilversum, Almere en omliggende gebieden. Vacatures tot 80 km zijn zichtbaar (met straf) en voorbij 80 km worden ze uitgesloten. U kunt de radius op elk moment aanpassen vanuit het profiel van de kandidaat.

Remote vacatures en locatie

Vacatures die als remote zijn gemarkeerd, omzeilen het locatiefilter volledig. Ze ontvangen altijd een locatiefactor van 1,0 (geen straf), ongeacht de locatie of zoekradius van de kandidaat:
  • Een kandidaat in Maastricht met een radius van 25 km ziet nog steeds remote vacatures van bedrijven in Amsterdam
  • Een kandidaat in Groningen met een radius van 10 km ziet remote vacatures van Rotterdam
  • De locatiestrarberekening wordt simpelweg overgeslagen voor remote posities
Dit betekent dat het inschakelen van de flexibiliteitsvoorkeur “Remote” effectief de volledige vacaturedatabase openstelt voor remote-gemarkeerde posities, ongeacht geografische beperkingen.
Voor kandidaten die echt locatieflexibel zijn (bereid om te reloceren of remote te werken), overweeg een grote radius in te stellen (150 km+) EN de Remote-voorkeur in te schakelen. Dit geeft u de breedst mogelijke vacaturepool terwijl geografische scoring nog steeds wordt toegepast op on-site en hybride functies.

Vacatures zonder locatiegegevens

Sommige vacatureplaatsingen bevatten geen specifieke locatie of de locatie kon niet worden geocodeerd. Wanneer de coordinaten van de kandidaat of de vacature ontbreken, is de standaard locatiestraf 1,0 (geen straf). Dit betekent:
  • Vacatures zonder coordinaten worden behandeld alsof ze binnen de radius van de kandidaat liggen
  • Kandidaten zonder coordinaten zien vacatures van alle locaties zonder straf
Dit is een bewuste ontwerpkeuze om te voorkomen dat potentieel relevante vacatures verborgen worden door ontbrekende gegevens. Het betekent echter dat kandidaten zonder correct geocodeerde locaties geografisch irrelevante matches kunnen zien. Zorg er altijd voor dat uw kandidaten een correct geocodeerde locatie hebben.

Salarisverwachtingen

Configureer de salarisverwachtingen van de kandidaat om matches te helpen evalueren:
  • Minimumsalaris — De laagst aanvaardbare vergoeding
  • Maximumsalaris — De beoogde of ideale vergoeding
Deze waarden worden opgeslagen op het kandidaatprofiel als salary_expectation_min en salary_expectation_max.
Veel vacatureplaatsingen in de database bevatten geen salarisgegevens. Wanneer een vacature geen compensatie-informatie bevat, wordt salarisfiltering niet toegepast en wordt de match beoordeeld op basis van andere factoren (vaardigheden, functietitel, ervaring, locatie). Salarisvoorkeuren zijn het nuttigst wanneer uw vacaturedatabase compensatie-informatie bevat, wat per bron en markt verschilt.
Zelfs wanneer salarisgegevens beperkt zijn in vacatures, is het nog steeds waardevol om salarisverwachtingen op het kandidaatprofiel in te stellen. Het helpt u als recruiter om matches snel te filteren en te prioriteren tijdens uw beoordeling. U kent de range van de kandidaat, zodat u elke match er mentaal tegen kunt afwegen.

Voorkeur voor functietype

Stel in voor welke soorten dienstverband de kandidaat openstaat:
FunctietypeBeschrijvingGangbaar gebruik
FulltimeStandaard voltijds dienstverband (36-40 uur)Meest gangbare voorkeur
ParttimeParttime of deeltijdse positiesOuders, studenten, semi-gepensioneerde professionals
ContractTijdelijk contract of freelance opdrachtenContractanten, interim-professionals, zzp’ers
U kunt meerdere functietypes selecteren. Als er geen voorkeur is ingesteld, zoekt de matchingengine standaard naar alle drie de types (fulltime, parttime en contract).
Voor contractanten en freelancers in Nederland (zzp’ers), selecteer “Contract” en mogelijk ook “Fulltime”. Veel bedrijven plaatsen contractfuncties als fulltime posities en het selecteren van beide zorgt ervoor dat u deze kansen niet mist.

Flexibiliteitsvoorkeuren

Definieer de werkregelingvoorkeuren van de kandidaat:
FlexibiliteitBeschrijvingImplicaties voor matching
On-siteWerken op kantoor bij de werkgeverLocatie en radius zijn cruciaal; alleen nabijgelegen vacatures zijn zinvol
HybrideMix van kantoor en remote werkenLocatie is belangrijk maar de radius kan iets groter zijn
RemoteVolledig remote positiesOmzeilt het locatiefilter volledig (factor = 1,0)
Net als functietypes kunt u meerdere flexibiliteitsopties selecteren. Deze voorkeuren worden als filters doorgegeven aan de vectorzoekfase. Als er geen flexibiliteitsvoorkeur is ingesteld, worden alle werkregelingen opgenomen.
Als een kandidaat alleen remote wil werken, zorg er dan voor dat “Remote” is geselecteerd als flexibiliteitsvoorkeur. Zonder dit kan het locatiefilter remote vacatures uitsluiten die zijn geplaatst door bedrijven ver van de kandidaat. Omgekeerd, als een kandidaat GEEN remote wil werken, zorg er dan voor dat “Remote” niet is geselecteerd om te voorkomen dat ze worden overspoeld met remote posities die niet bij hun voorkeur passen.

Hoe voorkeuren de matchingpipeline beinvloeden

Alle voorkeuren werken samen om de vacaturesearch in een gelaagde filterbenadering te verfijnen:
Volledige vacaturedatabase (duizenden actieve posities)
  |
  |-- Filter: is_active = true (alleen actieve vacatures)
  |-- Filter: geplaatst in de afgelopen 6 maanden (actualiteit)
  |-- Filter: heeft bedrijfsnaam (gegevenskwaliteit)
  |-- Filter: geen uitzendbureau/wervingsbureau (concurrenten uitsluiten)
  |
  |-- Filter op functietype (fulltime, parttime, contract)
  |-- Filter op flexibiliteit (on-site, hybride, remote)
  |-- Filter op locatie + radius (voorbij 2x radius uitsluiten)
  |
  |-- Scoren op locatie (vacatures tussen 1x en 2x radius straffen)
  |-- Scoren op vaardigheidsvectorgelijkenis (45% gewicht)
  |-- Scoren op titelvectorgelijkenis (35% gewicht)
  |-- Scoren op ervaringsvectorgelijkenis (20% gewicht)
  |
  |-- AI scoort op functiefit, vaardigheidsfit, ervaringsfit, secundaire fit
  |-- Locatiestraf toepassen op eindscore
  |
  |-- Definitief gerangschikte lijst (tot 200 matches)
Hoe specifieker de voorkeuren, hoe gerichter de resultaten. Het instellen van strikte voorkeuren levert minder maar meer relevante matches op. Bredere voorkeuren werpen een ruimer net maar kunnen minder relevante kansen bevatten.
Begin met gematigde voorkeuren en versnel indien nodig. Het is gemakkelijker om te verfijnen vanuit een grote resultatenset dan kansen te missen door te restrictief te zijn. Als een kandidaat 150+ matches ontvangt met te veel irrelevante, verklein dan de radius of wees specifieker over functietypes. Als ze minder dan 20 matches ontvangen, overweeg dan de radius te vergroten of meer flexibiliteitsopties toe te voegen.

Automatische hermatching bij locatiewijzigingen

Wanneer u de locatie of zoekradius van een kandidaat bijwerkt, detecteert Recruitier dat deze wijzigingen de matchingresultaten beinvloeden en activeert automatisch een hermatching. Het systeem monitort de volgende velden als hermatch-triggers:
VeldTriggerconditie
LocatieTekstwaarde gewijzigd
BreedegraadCoordinaatwaarde gewijzigd
LengtegraadCoordinaatwaarde gewijzigd
Gewenste radiusRadiuswaarde gewijzigd (in km)
Wanneer een van deze velden verandert, wordt de matchingpipeline opnieuw uitgevoerd met de bijgewerkte parameters. Het hermatchingproces:
  1. Identificeert alle bestaande beschermde matches (favoriet, gesolliciteerd, gecontacteerd, in gesprek, aanbod fase, geplaatst)
  2. Verzamelt de vacature-ID’s van beschermde matches in een uitsluitingslijst
  3. Voert de volledige 5-fase matchingpipeline uit met bijgewerkte locatieparameters
  4. Voegt nieuwe matches toe naast bestaande beschermde matches
  5. Oude in behandeling zijnde matches die niet langer geografisch relevant zijn, kunnen worden vervangen
Hermatching vervangt in behandeling zijnde matches (degenen in de fase “Nieuwe matches”) met verse resultaten op basis van de nieuwe locatie. Matches waarmee u al interactie heeft gehad — favoriet, gecontacteerd, in gesprek, gesolliciteerd, aanbod fase of geplaatst — worden altijd bewaard en worden niet verwijderd. Alleen onbewogen in behandeling zijnde matches worden beinvloed.
Wijzigingen in salarisverwachtingen, voorkeur voor functietype of flexibiliteitsvoorkeuren activeren niet automatisch hermatching. Als u deze voorkeuren bijwerkt en nieuwe matches wilt, kunt u handmatig een hermatching activeren vanuit het kandidaatprofiel. Dit is ontworpen om overmatige hermatching door kleine voorkeursinstellingen te voorkomen.

Voorkeuren configureren: beste werkwijzen

Vraag de kandidaat

Gok niet over voorkeuren. Een gesprek van 5 minuten over locatietolerantie, salarisverwachtingen en werkregelingvoorkeuren bespaart uren bij het beoordelen van irrelevante matches. Vraag specifiek: “Hoe ver wilt u maximaal dagelijks reizen?” en “Overweegt u volledig remote?”

Houd rekening met de Nederlandse markt

In Nederland is de Randstad (Amsterdam, Rotterdam, Den Haag, Utrecht) sterk verbonden door openbaar vervoer. Een radius van 50 km vanuit Amsterdam dekt het grootste deel van deze regio. Voor kandidaten buiten de Randstad (bijv. Eindhoven, Groningen, Maastricht) kan een grotere radius (75-100 km) nodig zijn om voldoende vacaturekansen te bereiken.

Bijwerken wanneer prioriteiten veranderen

De voorkeuren van kandidaten evolueren. Als iemand aanvankelijk on-site werk wilde maar nu open staat voor hybride, werk dan het profiel bij. Als een kandidaat aanvankelijk een radius van 25 km instelde maar realiseert dat ze hun zoektocht moeten uitbreiden, activeert het verhogen naar 50 km hermatching en brengt nieuwe kansen naar boven.

Gebruik Remote voor maximale dekking

Als een kandidaat echt flexibel is over remote werken, vergroot het inschakelen van de “Remote”-voorkeur hun vacaturepool aanzienlijk. Remote vacatures omzeilen het locatiefilter volledig, wat betekent dat een kandidaat in Maastricht kan matchen met remote kansen van bedrijven overal in Nederland (of verder).

Geavanceerd

De locatiestrafaformule

De locatiestraf is een deterministische berekening die wordt toegepast na AI-scoring. Het is multiplicatief, wat betekent dat het de AI-score vermindert met een percentage op basis van de afstand. Hier is de exacte formule:
if afstand <= gewenste_radius:
    locatiefactor = 1.0

elif afstand <= 2 * gewenste_radius:
    # Lineaire interpolatie van 1.0 naar 0.7
    verhouding = (afstand - gewenste_radius) / gewenste_radius
    locatiefactor = 1.0 - (0.3 * verhouding)

elif afstand > 2 * gewenste_radius:
    # Uitgesloten tijdens zoeken (bereikt nooit scoring)
    locatiefactor = n.v.t. (vacature niet opgehaald)

# Speciale gevallen:
if vacature_is_remote:
    locatiefactor = 1.0

if kandidaat_heeft_geen_coordinaten or vacature_heeft_geen_coordinaten:
    locatiefactor = 1.0
Toegepast op de eindscore: eindscore = ai_score * locatiefactor Voorbeeldberekeningen:
Radius kandidaatVacatureafstandLocatiefactorAI-scoreEindscore
50 km30 km1,085%85%
50 km60 km0,9485%80%
50 km75 km0,8585%72%
50 km95 km0,7385%62%
50 km100 km0,7085%60%
50 km101 kmUitgesloten85%n.v.t.
50 kmRemote1,085%85%

Hoe geocodering intern werkt

De GeocodingService volgt een cascaderende resolutiestrategie die is ontworpen voor de Nederlandse markt:
  1. Nederlandse stedenlijst: Een vooraf geladen lijst van Nederlandse steden met hun coordinaten. Dit biedt submilliseconde resolutie voor het meest voorkomende geval. Steden worden hoofdletterongevoelig gematcht met gangbare variaties verwerkt (bijv. “Den Haag” en “‘s-Gravenhage” worden beide herleid naar Den Haag).
  2. Nominatim API: Voor locaties die niet in de Nederlandse database staan (internationale locaties, specifieke adressen, wijken), biedt de Nominatim API geocodering. Dit is dezelfde service die de OpenStreetMap-zoekopdracht aandrijft. Resultaten omvatten coordinaten, weergavenaam en een genormaliseerde adresstring.
  3. AI-normalisatie: Voor locatiestrings die noch de database noch Nominatim kan oplossen (onduidelijke beschrijvingen, regionale namen, informele locatieverwijzingen), probeert AI-gebaseerde normalisatie de bedoeling te interpreteren en toe te wijzen aan specifieke coordinaten. “Randstad-gebied” kan bijvoorbeeld worden herleid naar een centraal punt zoals Utrecht.

Interactie tussen locatie en andere filters

Het locatiefilter werkt op specifieke manieren samen met andere matchingparameters:
  • Uitsluiting van uitzend-/wervingsbureaus: Wordt toegepast vóór locatiefiltering. Vacatures van uitzendbureaus worden uitgesloten ongeacht de locatie.
  • Actualiteitsfilter (6 maanden): Wordt toegepast vóór locatiefiltering. Oude vacatures worden uitgesloten ongeacht de nabijheid.
  • Filters voor functietype en flexibiliteit: Worden toegepast in hetzelfde stadium als locatie. Dit zijn AND-condities — een vacature moet alle filters doorstaan om te worden opgenomen.
  • Vectorzoekopdracht: Wordt uitgevoerd nadat alle filters zijn toegepast. De ophaalmaximum van 400 biedt een buffer voor nafiltering, met een weergavelimiet van 200 definitieve matches.

Voorkeuren opgeslagen als JSONB

Voorkeur voor functietype en flexibiliteitsvoorkeuren worden opgeslagen als JSONB-arrays op de kandidaat-entiteit:
  • preferred_job_types: ["fulltime", "contract"]
  • preferred_flexibility: ["hybride", "remote"]
  • preferred_locations: JSONB-array van gewenste locatieobjecten (voor kandidaten die in meerdere gebieden willen zoeken)
Deze JSONB-opslag maakt flexibele meervoudige selectie mogelijk zonder afzonderlijke databasetabellen voor voorkeuren te vereisen. De matchingpipeline leest deze arrays en past ze toe als filtercriteria tijdens de vectorzoekfase.

Tips voor gevorderde gebruikers

Voor kandidaten die de Randstad targeten: Stel de locatie in op Utrecht (centraal) met een radius van 50 km. Deze enkele configuratie dekt Amsterdam, Rotterdam, Den Haag en Utrecht — de vier grote steden van de Randstad. U kunt dan de locatiestraf laten zorgen voor een natuurlijke prioritering van dichterbijgelegen vacatures.
Voor volledig remote kandidaten: Stel een redelijke thuislocatie in (voor hybride vacaturematching) maar schakel de flexibiliteitsvoorkeur “Remote” in. Dit geeft u het beste van beide werelden — lokale hybride/on-site vacatures worden normaal op locatie gescoord, terwijl remote vacatures van overal zonder straf verschijnen.
Let op de “geen coordinaten”-standaard. Als een kandidaat of vacature geen geocodeerde coordinaten heeft, is de standaard locatiefactor 1,0 (geen straf). Dit betekent dat verre vacatures verschijnen met kunstmatig hoge scores. Als u merkt dat een kandidaat veel geografisch ongeschikte matches krijgt, controleer dan of hun locatie correct is geocodeerd met breedte-/lengtegraadwaarden.
Het wijzigen van voorkeuren zoals functietype en flexibiliteit activeert geen automatische hermatching (in tegenstelling tot locatiewijzigingen, die dat wel doen). Als u deze voorkeuren bijwerkt en verse resultaten wilt, activeer dan handmatig een hermatching vanuit het kandidaatprofiel. Dit ontwerp voorkomt onnodige hermatching door kleine voorkeursinstellingen.

Gerelateerd