Case study 02 · HR Tech · AI-powered hiring

Testfuse — job-fit assessments that go past the résumé

A job-fit assessment platform combining skill tests, coding challenges, values-fitness and personality scoring, video/text responses, and anti-cheat monitoring — with AI that turns a pasted job description into a ready assessment. I designed the full admin and candidate experience across web and mobile.

RoleLead Designer
Admin + candidate, web + mobile
PlatformResponsive web & mobile
4 parallel experiences, localized
ScopeEnd-to-end UX across 2 audiences, iterated through multiple full versions
Testfuse — assessment creation, additional sections & AI generation

01 — Problem

One test type was never going to answer "will this person work out?"

Recruiters using a single skills test get half an answer: a candidate can pass a coding challenge and still be the wrong fit for the team, or fail a timed test under stress despite being excellent at the job itself. Testfuse's premise was that job fit is multi-dimensional — skills, values, and personality all predict retention, and no one of them alone does.

That premise makes the product inherently two-sided and data-heavy: employers need to configure and compare candidates across up to eight different assessment types — skill-based tests, coding tests, values-fitness tests, personality tests, case studies, text responses, video responses, and file uploads — while candidates need to move through all of that without the process feeling like an interrogation. Designing for both at once, on both web and mobile, was the real brief.

I owned the full experience for both audiences across both platforms. The file itself is evidence of how much iteration that took — the product went through a full first version, a redesigned second version for both web and mobile, and further refined "updated UI" passes as the assessment model matured.

02 — Research & iteration

Letting the assessment-builder complexity live in configuration, not in the candidate's lap

The core design risk was that the employer's need for depth would leak into the candidate's experience. Eight assessment-section types, an anti-cheat monitor, expiry rules, and AI-assisted generation are a lot of moving parts on the admin side — the candidate should never feel that complexity, only a clean, single assessment that happens to combine skills, values, and personality.

I resolved that by keeping configuration and consumption as two deliberately different systems that share one visual language. On the admin side, Assessment Creation is a builder: a persistent "My Assessment" outline on the left, section cards you add on the right (Skill-Based, Coding, Values-Fitness, Case Study, Text/Video Response, File Upload), each opening its own focused configuration panel. On the candidate side, all of that collapses into a single linear flow with one running timer and one exit point per section.

Status and hiring-stage taxonomies were designed to mirror how a recruiter actually thinks about a pipeline, not just how the database happened to model it: assessment status (Pending, In Progress, Completed, Declined, Not Qualified, Expired) is separate from hiring stage (Hired, Shortlisted, Rejected) — so a completed assessment and a hiring decision are always visually distinct, even though they're related.

03 — Design

A builder for employers, a straight line for candidates, and AI to skip the blank page

Create Assessment with AI

Rather than starting every assessment from a blank builder, I designed an AI entry point where a recruiter pastes a job description and gets a draft assessment — sections, questions, and time estimates pre-populated — that they can then edit in the same builder used for manual creation. It turns the highest-friction step, starting, into a single paste-and-review action.

A modular assessment builder

Each section type — Skill-Based Test, Coding Test, Values-Fitness Test, Personality Test, Case Study, Text Response, Video Response, File Upload — lives in a drag-and-drop component library, dragged onto the assessment canvas rather than picked from a dropdown. Each carries a consistent configuration pattern: a short description of what the candidate will experience, an estimated time, and type-specific settings. Qualifying Questions alone support three formats — numeric, true/false, and multiple choice — so a recruiter can screen out unqualified candidates before they ever reach the paid assessment content. Additional Settings — Anti-Cheat Monitor and Assessment Expiry — sit apart from content sections since they're policy, not test content.

Explainable, decomposed scores

I replaced the standalone fit score with a result a recruiter could defend: a Job Fitness Score decomposed into the dimensions that produced it — Personality Match, Value Alignment, and Skills Test Score — each on its own scale, alongside a Personality Compatibility rating against the role. A side-by-side comparison view and bulk shortlist/reject actions turn a stack of candidates into something scannable, not a pile to click through one at a time.

A calm, single-file candidate flow

On the candidate side, the assessment dashboard lists every invitation with the information that actually drives a decision: role, company, time estimate, and a clear expiry date, with Start / Resume / Decline as the only actions in view. Completed assessments surface a score, so candidates get closure rather than silence.

Not making candidates repeat themselves

Skill and coding scores carry a validity window. A candidate who has already taken a given test elsewhere on the platform is offered a choice up front — reuse the valid result or retake it — instead of being forced through a redundant test for every new application. It treats a candidate's time as finite across employers, not just within one assessment.

Anti-cheat without an accusatory tone

Anti-cheat monitoring is a sensitive feature to surface to a candidate — done wrong, it reads as "we don't trust you." I designed it as a disclosed, opt-in setting the employer configures up front: a plain camera-and-microphone check before the assessment starts, and a calm, matter-of-fact recovery flow if the connection drops mid-test, rather than treating an interruption as suspicious.

The admin builder: a persistent outline with modular section cards on the right.

The admin builder: a persistent outline with modular section cards on the right.

Paste a job description, get a draft assessment ready to edit.

Paste a job description, get a draft assessment ready to edit.

Candidates see role, company, time estimate, and expiry at a glance.

Candidates see role, company, time estimate, and expiry at a glance.

Assessment status and hiring stage are kept visually distinct.

Assessment status and hiring stage are kept visually distinct.

04 — Impact

A two-sided, multi-platform system that matured through real iteration

8

distinct assessment types designed as one consistent, drag-and-drop builder pattern — skill, coding, values-fitness, personality, case study, text, video, file upload

4

parallel experiences shipped — admin and candidate, each on web and mobile

92%

of recruiters using Testfuse report better 6-month retention, per company-reported data

The product shipped as four coherent, responsive experiences — admin and candidate, web and mobile — sharing one design system, and went through multiple full redesign passes as the assessment model grew from a single skills test into an eight-type, AI-assisted builder with its own integration ecosystem. Testfuse today reports that recruiters using the platform see meaningfully better candidate retention in the first six months compared to traditional hiring.

What I'd carry forward: when a product asks two very different audiences to trust the same data for different reasons — an employer trusting a score, a candidate trusting a process — the design has to earn that trust separately on each side. The anti-cheat setting and the AI assessment generator are the same underlying capability serving opposite anxieties, and they needed opposite tones.

← BACKAll workNEXT CASE STUDY →Eddiy