Skip to content
Discuss your AI plans 

An AI hiring app that explains matches

Chapta · full product build, live on iOS and Android

OpenKit built Chapta’s candidate app, where candidates create a profile by talking to it and every job match comes back with the reasoning written against it. Code settles who is eligible for a role before the model writes the explanation.

A candidate at a kitchen table with a phone and a notebook, the job search in progress

Overview

Chapta came to OpenKit to build a hiring platform for job seekers tired of sending CVs and hearing nothing back. Employers on the other side work through a pile of CVs that says very little about anyone in it. OpenKit built the employer portal and the candidate app on iOS and Android, both running on one matching engine that is part rules and part model by design.

8 to 12

skills drawn out of each candidate by the onboarding conversation.

75%

lower cost to feed the matching engine after job ingestion moved from scraping to a jobs API.

2

app stores, iOS and Android, carrying the live candidate app.

3

referees a candidate can have contacted directly, with the replies shown against the match.

Approach

What OpenKit built

What the candidate gets

Onboarding runs as a conversation that draws out job history, education, skills, salary expectations, flexibility, sectors, working environment, availability and visa status.

Each match comes with an explanation of why the candidate fits the role, written fresh for each job.

A candidate registers interest in a role and can see where each interest stands at any point.

What the employer gets

The employer creates each job with the extra fields the matching engine needs. Shortlists come back with profiles redacted until both sides have opted in.

Interest arrives with the same reasoning the candidate saw, so the first conversation starts informed.

Closing a role requires a message to the candidates in it, so nobody is left without an answer.

The app

Inside the candidate app

Job discovery feed with personalised matches and status on each card
Candidate filters for location, salary, work pattern and role type
Behavioural assessment step inside the candidate onboarding flow
Candidate profile built from the onboarding conversation

Matching

How the matching engine decides

Whether a candidate is at the right level for a role is a hard rule. A wrong call costs money and lets people down, so OpenKit kept that decision away from the model. The engine filters on seniority tier in code and treats salary and location as soft criteria that shift the ranking. The model is left to write the explanation.

Full job detail view with role requirements and match context
Per-job view showing the breakdown of why the candidate matched

Result

Running in production

The candidate app is live on iOS and Android and has been iterated against real feedback. Job data used to be scraped, which was fragile and expensive at volume. Moving ingestion to a jobs API cut the cost of feeding the matching engine by 75% and ended a whole class of breakage.

A candidate profile is personal data about someone looking for work, which is about as sensitive as an application gets. OpenKit wrote and tested the deletion protocol and set a retention period before any customer asked for one. The platform runs to UK GDPR and keeps its data in the UK.

Other engagements

What could your business do with AI?

Find out with experts who become part of your team. We uncover opportunities, get ideas working, and help your people build on the results. We reply within one working day.

Get in touch  AI Audit