Case 06 — PairSonal: matching platform for temp staffing & recruitment
Bilaterally anonymous B2B matching between companies and HR service providers. Anonymity is an architectural invariant, not a marketing promise — contact data lives in a separated sphere and is released server-side only on a mutual match.
The challenge
Staffing agencies flood HR departments with cold outreach — phone, email, pressure. Many companies strip contact data from their job ads. The agencies in turn pay six-figure sums per region (benchmark ~€6,000/year for raw address lists) for databases in which most companies have no current demand. What was missing was a bilateral, technically-enforced channel that finds supply and demand in a structured way — without one side drowning the other in noise.
Architecture
A Next.js frontend with separate portals for the two market sides, a FastAPI backend with OAuth2/JWT auth and sphere-separated contact-data persistence. PostgreSQL primary for profiles, demands and matches, with Alembic migrations. A bespoke Python matching engine scores four dimensions deterministically — region (PLZ lookup), profession, industry, placement type — with no black-box model: every recommendation is explainable through the scoring function. A contact router enforces the anonymity invariant server-side and opens the channel only on a mutual match.
Pipeline
Matching & contact-opening flow
- 01Company posts the demand in a structured way (free): industry, profession, region by postal code, placement type, conditions.
- 02Matching engine scores all agency profiles against the demand — deterministic scoring function across four dimensions, every decision auditable.
- 03Agency sees matching demands and expresses interest — the company's HR contact data is technically absent from the payload.
- 04Company curates interested agencies and actively picks which one may make contact — no broadcast, targeted decision power.
- 05On a mutual match, the contact router opens the channel, the framework contract activates, and the engagement is booked via a one-click concretisation.
Technology stack
Outcome
Live in Early Access on pairsonal.de with a regional pilot rollout. Anonymity is implemented as an architectural invariant: an agency cannot reach a company through the platform until the company itself unlocks the match. Matching remains deterministic and explainable — the same demand yields the same suggestion list, no model drift, no black-box overselling. Compared with the competitor's broadcast model, the curated-choice flow reduces cognitive load on both market sides.