RAG Candidate Search Across 500K CVs on Amazon Bedrock
Recruiters search 500,000 candidate records in plain English, in real time, instead of writing SQL.
Client details anonymized under NDA. The work, approach, and results shown here are real. Contact me for references.
Records Searchable
Search Results
SQL Queries to Write
Shortlists With Reasons
Overview
The same agency held about 500,000 candidate records in an internal database, but finding the right people meant writing SQL queries by hand. I built a retrieval augmented generation (RAG) system entirely on AWS: Amazon Bedrock Knowledge Bases indexes the CVs, and an agent running on Amazon Bedrock AgentCore lets recruiters search in plain English. The agent turns the request into a search, finds the relevant CVs and returns a ranked shortlist with the details that matter, in real time.
About the client
A recruitment agency in Canada with 50 staff, running on Bullhorn, with an internal database of about 500,000 candidate records: one of its most valuable assets, and one of the hardest to use.
- Industry
- Recruitment
- Location
- Canada
- Team
- 50 staff
- Candidate records
- About 500K
The Problem
What they were dealing with
Years of candidates sat in an internal database of about 500,000 records. Searching it meant writing SQL queries: exact keywords in exact fields, with results that missed anyone who described their experience in different words. Most recruiters could not write those queries themselves, so a search meant waiting for someone who could, and the agency could not get full value from a database it had spent years building.
Finding candidates meant hand written SQL queries against the database
Keyword matching missed good candidates whose CVs used different words
Most recruiters depended on someone else to run a search
Results came back as raw rows, not a shortlist a recruiter could act on
Before
500K
Candidate records
Manual SQL
Search method
Exact keywords
Matching
Raw rows
Results
The Solution
How I solved it
Recruiters think in descriptions, not queries: a senior accountant near Toronto who has worked with SAP. The system had to understand a request like that and search the whole database in seconds.
I built it entirely on AWS. Amazon Bedrock Knowledge Bases handles the retrieval layer: the CVs from the candidate database are parsed, chunked and embedded into a managed knowledge base, so a search matches on meaning and not only on exact keywords. The agent that sits on top of it runs on Amazon Bedrock AgentCore, with a Claude model on Amazon Bedrock doing the reasoning. It takes the recruiter's plain English request, queries the knowledge base, checks the results against the details that matter for the role, and returns a ranked shortlist with the reason each candidate fits. Recruiters see the relevant details from each CV without touching the database.
Data audit
Reviewed how candidate records and CVs were stored and which details recruiters search on most.
Indexing on AWS
Set up an Amazon Bedrock Knowledge Base over the CVs, so parsing, chunking, embedding and indexing are managed, with sync jobs to pick up new and updated records.
Search agent on AgentCore
A Claude powered agent hosted on Amazon Bedrock AgentCore turns a plain English request into a search over the knowledge base, then ranks the results. AgentCore handles the runtime, tool access, identity and tracing.
Shortlists recruiters can trust
Every candidate comes back with the reason they fit and the relevant CV details, so a recruiter can judge in seconds.
The Result
What changed
500K
Records Searchable
Real time
Search Results
0
SQL Queries to Write
Ranked
Shortlists With Reasons
Related Projects
AI Job Intake Automation for a Canadian Recruitment Agency
Built an AI job intake pipeline for a 50 person recruitment agency in Canada. Job requests from client emails and an intake form are read by a Claude agent, checked against Bullhorn and written straight in, with the recruiter alerted and the client follow up sent automatically.
40% Faster Response Time
RAG Chatbot for Developer Documentation
Built a RAG system that indexes 12,000 documentation pages with hybrid search, confidence scoring, and automatic human handoff for a developer tools platform.
45% Fewer Tickets (Month 1)
Facing a similar challenge?
Every project starts with a conversation. Tell me what you're dealing with and I'll tell you honestly whether I can help.

