Skip to content
ZERONE
Nazaj na projekte
B2B SaaS · HR-Tech · AI matching · 2026

Case 06 — PairSonal: matching platforma za začasno delo in posredovanje kadrov

Obojestransko anonimno B2B matching med podjetji in HR ponudniki. Anonimnost je arhitekturna invarianta, ne marketinška obljuba — kontaktni podatki živijo v ločeni sferi in se server-side sprostijo šele ob obojestranskem matchu.

0Hladnih klicev (by design)
4Match dimenzij
2Strani trga · enakovredni
1-KlickKonkretizacija okvirne pogodbe

Izziv

Kadrovske agencije preplavljujejo HR oddelke s hladnimi kontakti — telefon, e-pošta, pritisk. Mnoga podjetja iz oglasov odstranijo kontaktne podatke. Agencije pa plačujejo šestmestne zneske letno (benchmark ~6.000 €/leto za surove adresne sezname) za baze, v katerih večina podjetij nima trenutne potrebe. Manjkal je bilateralen, tehnično izsiljen kanal, ki strukturirano najde povpraševanje in ponudbo — brez da bi ena stran drugo preplavila s hrupom.

Arhitektura

Next.js frontend z ločenima portaloma za obe strani trga, FastAPI backend z OAuth2/JWT avtentikacijo in sferno ločenim shranjevanjem kontaktnih podatkov. PostgreSQL kot primary za profile, povpraševanja in matche, z Alembic migracijami. Lasten Python matching engine deterministično ocenjuje štiri dimenzije — regijo (PLZ lookup), poklic, panogo, vrsto posredovanja — brez black-box modela: vsaka priporočilo je razložljiva preko scoring funkcije. Contact router server-side uveljavi invarianto anonimnosti in odpre kanal šele ob obojestranskem matchu.

FastAPI · OAuth2 · JWT · OpenAPIAPIORCHESTRATORNext.js · portal podjetijUI-CWORKERNext.js · portal agencijUI-PWORKERMatching engine · regija · poklic · panoga · posredovanjeMATWORKERSfera anonimizacije · contact gateANOWORKERAdmin router · pilot kontrola · dodelitev badgeaADMWORKERPostgreSQL · SQLAlchemy · AlembicDBPRIMARY
APIFastAPI · OAuth2 · JWT · OpenAPI
UI-CNext.js · portal podjetij
UI-PNext.js · portal agencij
MATMatching engine · regija · poklic · panoga · posredovanje
ANOSfera anonimizacije · contact gate
ADMAdmin router · pilot kontrola · dodelitev badgea
DBPostgreSQL · SQLAlchemy · Alembic

Pipeline

Matching in odpiranje kontakta — flow

  1. 01Podjetje strukturirano objavi povpraševanje (brezplačno): panoga, poklic, regija preko poštne številke, vrsta posredovanja, pogoji.
  2. 02Matching engine ocenjuje vse profile agencij glede na povpraševanje — determinističen scoring nad štirimi dimenzijami, vsaka odločitev auditabilna.
  3. 03Agencija vidi ujemajoča se povpraševanja in izrazi interes — HR kontaktni podatki podjetja so tehnično odsotni iz payloada.
  4. 04Podjetje kurira zainteresirane in aktivno izbere, katera agencija lahko dobi kontakt — brez broadcasta, ciljana moč izbire.
  5. 05Ob obojestranskem matchu contact router odpre kanal, okvirna pogodba se aktivira, angažma se rezervira z enim klikom konkretizacije.

Tehnološki 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

Rezultat

Live v Early Accessu na pairsonal.de z regionalnim pilot rolloutom. Anonimnost je implementirana kot arhitekturna invarianta: agencija ne more doseči podjetja preko platforme, dokler podjetje samo ne odklene matcha. Matching ostaja determinističen in razložljiv — enako povpraševanje vrne enak seznam predlogov, brez model drifta, brez black-box oversellinga. V primerjavi z broadcast modelom konkurence kurirana izbira zmanjša kognitivno breme obeh strani trga.

Podoben projekt?

Pogovorimo se — poslušamo, preden dostavimo.

Zahtevajte projekt