Skip to content
ZERONE
Zurück zu Projekten
B2B SaaS · HR-Tech · KI-Matching · 2026

Case 06 — PairSonal: Matching-Plattform Zeitarbeit & Personalvermittlung

Beidseitig anonymes B2B-Matching zwischen Unternehmen und Personaldienstleistern. Anonymität ist Architektur-Invariante, kein Marketing-Versprechen — Kontaktdaten liegen in einer getrennten Sphäre und werden serverseitig erst bei beidseitigem Match freigegeben.

0Ungefragte Anrufe (by design)
4Match-Dimensionen
2Marktseiten · gleichberechtigt
1-KlickRahmenvertrag-Konkretisierung

Die Herausforderung

Personaldienstleister überfluten HR-Abteilungen mit Kaltakquise — Telefon, E-Mail, Druck. Viele Unternehmen entfernen ihre Kontaktdaten aus Stellenanzeigen. PZA wiederum zahlen sechsstellig pro Region (Benchmark ~6.000 €/Jahr für reine Adresslisten) für Datenbanken, in denen die Mehrheit keinen aktuellen Bedarf hat. Es fehlte ein bilateraler, technisch durchgesetzter Kanal, der Bedarf und Angebot strukturiert findet — ohne dass eine Seite die andere mit Lärm überrennt.

Architektur

Next.js-Frontend mit getrennten Portalen für die beiden Marktseiten, FastAPI-Backend mit OAuth2-/JWT-Auth und sphären­getrennter Kontaktdaten-Persistenz. PostgreSQL als Primary für Profile, Bedarfe und Matches mit Alembic-Migrationen. Eine selbstgebaute Matching-Engine in Python wertet vier Dimensionen deterministisch — Region (PLZ-Lookup), Beruf, Branche, Vermittlungsart — ohne Black-Box-Modell: jede Empfehlung ist über die Scoring-Funktion erklärbar. Ein Contact-Router setzt die Anonymitäts-Invariante server­seitig durch und schaltet den Kontakt erst bei beidseitigem Match frei.

FastAPI · OAuth2 · JWT · OpenAPIAPIORCHESTRATORNext.js · Unternehmens-PortalUI-CWORKERNext.js · PZA-PortalUI-PWORKERMatching-Engine · Region · Beruf · Branche · VermittlungMATWORKERAnonymisierungs-Sphäre · Contact-GateANOWORKERAdmin-Router · Pilot-Steuerung · Siegel-VergabeADMWORKERPostgreSQL · SQLAlchemy · AlembicDBPRIMARY
APIFastAPI · OAuth2 · JWT · OpenAPI
UI-CNext.js · Unternehmens-Portal
UI-PNext.js · PZA-Portal
MATMatching-Engine · Region · Beruf · Branche · Vermittlung
ANOAnonymisierungs-Sphäre · Contact-Gate
ADMAdmin-Router · Pilot-Steuerung · Siegel-Vergabe
DBPostgreSQL · SQLAlchemy · Alembic

Pipeline

Matching- und Kontaktöffnungs-Flow

  1. 01Unternehmen stellt Bedarf strukturiert ein (kostenlos): Branche, Beruf, Region per PLZ, Vermittlungsart, Konditionen.
  2. 02Matching-Engine bewertet alle PZA-Profile gegen den Bedarf — deterministische Scoring-Funktion über vier Dimensionen, jede Entscheidung nachvollziehbar.
  3. 03PZA sieht passende Bedarfe; signalisiert Interesse — die HR-Kontaktdaten der Firma sind im Payload technisch nicht enthalten.
  4. 04Unternehmen kuratiert die Interessenten und wählt aktiv aus, welcher PZA Kontakt erhalten darf — kein Broadcast, gezielte Auswahlmacht.
  5. 05Bei beidseitigem Match schaltet der Contact-Router den Kanal frei, der Rahmenvertrag aktiviert sich, der Einsatz wird per Ein-Klick-Konkretisierung gebucht.

Technologie-Stack

Next.js · React · TypeScriptTailwind CSS v4FastAPI · UvicornSQLAlchemy · AlembicPostgreSQLpython-jose (JWT) · passlib (bcrypt)OAuth2 Password-FlowCustom Matching-Scorer (Python)OpenAPI 3.0systemd · nginx · Let's Encrypt

Ergebnis

Live in Early Access auf pairsonal.de mit regionalem Pilot-Rollout. Anonymität ist als Architektur-Invariante implementiert: ein PZA kann eine Firma über die Plattform nicht erreichen, solange die Firma den Match nicht selbst freigibt. Das Matching bleibt deterministisch und erklärbar — gleicher Bedarf liefert dieselbe Vorschlagsliste, kein Modell-Drift, kein Black-Box-Overselling. Im direkten Vergleich zum Broadcast-Modell des Wettbewerbs reduziert die kuratierte Auswahl die kognitive Last beider Marktseiten.

Ähnliches Vorhaben?

Sprich mit uns — wir hören zu, bevor wir liefern.

Projekt anfragen