AI Automation/Professional Services

Build Custom Candidate Matching for Specialized Roles

Custom algorithms use semantic search to understand job context beyond keywords. Skills gap analysis algorithms identify missing competencies in candidate profiles.

By Parker Gawne, Founder at Syntora|Updated Mar 5, 2026

Syntora develops custom algorithms for candidate matching that leverage semantic search and AI-powered skills gap analysis. Our engineering engagements focus on integrating with existing ATS platforms and utilizing advanced models like sentence transformers and the Claude API to find the best fit for specialized roles.

The scope of a custom candidate matching solution depends heavily on your existing data sources and their structure. Integrating with a modern Applicant Tracking System (ATS) like Ashby or Lever via API presents a clear path. However, processing unstructured resumes stored in shared drives requires an initial data parsing and structuring phase before any matching can begin. Syntora's approach involves a discovery phase to audit your current data landscape and define a tailored architectural roadmap.

The Problem

What Problem Does This Solve?

Most recruiting firms rely on the built-in keyword search of their Applicant Tracking System (ATS). This method is brittle. A search for "Python developer" will miss a perfect candidate whose resume lists extensive experience with "Django" and "FastAPI" but omits the word "Python". This creates an endless stream of false negatives, burying your best candidates.

A 12-person firm needs to fill a "Senior Site Reliability Engineer" role. Their ATS search for "Kubernetes" and "Terraform" misses a candidate whose resume details a 3-year project migrating an application to AWS EKS using Infrastructure as Code. The resume uses the terms "container orchestration" and "IaC" instead of the exact keywords. The recruiter wastes 8 hours manually reviewing 200 resumes to find someone who was already in their system.

These tools fail because they treat resumes as bags of words, not as summaries of experience. They cannot infer that experience with FastAPI implies proficiency in Python, or that AWS EKS is a managed Kubernetes service. They only match exact character strings, forcing recruiters to play a frustrating guessing game with keywords.

Our Approach

How Would Syntora Approach This?

Syntora would approach the development of a custom candidate matching system with a structured engineering engagement. The initial step involves a comprehensive data audit and ingestion strategy, collaboratively designed with your team. We would connect to your existing ATS APIs, such as Lever, Greenhouse, or Ashby, to pull historical job descriptions and candidate resumes. For any unstructured data, like PDF resumes in shared folders, we would implement a Python-based parsing solution, potentially leveraging libraries like PyMuPDF to extract raw text, creating a unified dataset suitable for processing.

Following data ingestion, the process would move to transforming this raw data into a semantically rich format. We would employ a sentence-transformer model, such as all-MiniLM-L6-v2, to convert each resume and job description into high-dimensional vector embeddings. These embeddings capture the contextual meaning, enabling semantic search beyond simple keyword matching. These vectors would be stored in a Supabase Postgres database, utilizing the pgvector extension for efficient similarity search queries.

The core of the system would be a FastAPI service. This service would generate an embedding for a new job description and then query the pgvector index to identify the most semantically similar candidate profiles. For a deeper, qualitative analysis, the system would integrate the Claude API to extract structured skills from both job requirements and candidate profiles. This capability allows for precise skills gap analysis, highlighting what a candidate possesses versus what the role demands. We've built similar document processing pipelines using the Claude API for complex financial documents, and the same robust pattern applies to candidate profiles in the recruiting domain.

Deployment would typically involve containerizing the FastAPI service and deploying it on a cloud platform like AWS Lambda, accessible via an API Gateway. This architecture provides scalability and cost efficiency, with typical hosting costs for services of this nature being highly optimized. The delivered system would expose endpoints for integration into your existing recruitment workflows or a custom front-end interface built on platforms like Vercel, allowing recruiters to review ranked candidates, analyze skill gaps, and easily advance suitable candidates within your ATS. A typical build of this complexity would range from 8-16 weeks, requiring active collaboration and data provision from the client.

Why It Matters

Key Benefits

01

Find Hidden Candidates in Your Own ATS

Surface high-match candidates your keyword search missed. The system rediscovers talent you already have, cutting sourcing costs.

02

From Job Post to Shortlist in 90 Seconds

The entire process, from embedding a new job description to getting a ranked list of 50 candidates, completes in under two minutes.

03

Pay Once for the Asset, Not Per Seat

A one-time build cost and minimal monthly hosting on AWS. You own the code, hosted in your private GitHub repository.

04

Transparent Logic, Not a Black Box

The skills gap analysis shows exactly why a candidate ranked high, using Claude API to explain the match. No more guessing.

05

Built to Evolve with Your Niche

The model can be fine-tuned on your specific placement data. It learns what a great candidate looks like for your firm, improving accuracy over time.

How We Deliver

The Process

01

Week 1: ATS Integration and Data Ingestion

You provide read-only API keys to your ATS. We pull all historical job and candidate data into our staging Supabase instance and provide a data quality report.

02

Week 2: Model Training and Validation

We generate embeddings and build the core matching logic. You receive a validation link to test matches against 5 sample job descriptions from your system.

03

Week 3: UI Build and Deployment

We build the Vercel front-end for viewing ranked candidates and deploy the FastAPI backend to AWS Lambda. You receive login credentials to the live system.

04

Weeks 4-8: Live Monitoring and Handoff

Your team uses the system with live jobs. We monitor performance, make adjustments, and prepare a full runbook. You receive the final source code and documentation.

The Syntora Advantage

Not all AI partners are built the same.

AI Audit First

Other Agencies

Assessment phase is often skipped or abbreviated

Syntora

Syntora

We assess your business before we build anything

Private AI

Other Agencies

Typically built on shared, third-party platforms

Syntora

Syntora

Fully private systems. Your data never leaves your environment

Your Tools

Other Agencies

May require new software purchases or migrations

Syntora

Syntora

Zero disruption to your existing tools and workflows

Team Training

Other Agencies

Training and ongoing support are usually extra

Syntora

Syntora

Full training included. Your team hits the ground running from day one

Ownership

Other Agencies

Code and data often stay on the vendor's platform

Syntora

Syntora

You own everything we build. The systems, the data, all of it. No lock-in

Get Started

Ready to Automate Your Professional Services Operations?

Book a call to discuss how we can implement ai automation for your professional services business.

FAQ

Everything You're Thinking. Answered.

01

What does a custom matching algorithm cost?

02

What happens if the matching quality seems low for a specific role?

03

How is this different from an AI sourcing tool like SeekOut or hireEZ?

04

Do we need to host this on our own infrastructure?

05

How do you handle bias in the algorithms?

06

What technical skill is needed to maintain this?