Recruiters sit on hundreds of CVs they can't search. Keyword search misses the obvious — the cand...Recruiters sit on hundreds of CVs they can't search. Keyword search misses the obvious — the cand...
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started
Recruiters sit on hundreds of CVs they can't search. Keyword search misses the obvious — the candidate wrote "React", you searched "frontend", they never surface — and every AI tool that fixes that ships candidate data to a third-party API.
I built RecruitSecure AI to do the semantic search without the API call. The embedding model runs server-side through Transformers.js (quantized multilingual-e5-small, 384 dimensions, 100+ languages), so you can ask in Spanish and it finds CVs written in English — and nothing ever leaves the deployment.
Drop in PDFs or DOCX and it extracts name, email, skills and experience, indexes each CV as a vector, and answers plain-language queries like "frontend lead who has built a design system": ranked by relevance, each result showing the exact CV fragments behind the match, so the recruiter sees the reason and not just a score. Retrieval is hybrid — pgvector HNSW cosine fused with BM25 full-text through Reciprocal Rank Fusion, then re-ranked from the recruiter's own thumbs up/down.
Next.js 16, React 19, strict TypeScript, PostgreSQL + pgvector through Drizzle ORM, Auth.js, Stripe subscriptions, multi-tenant with AES-256-GCM encryption at rest and GDPR export and deletion. Built solo, end to end.
The video is the real application: ten synthetic CVs uploaded through the actual pipeline, extracted, embedded and searched. Nothing staged.
Post image
Post image
Post image
Back to feed
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started