PROJECT CASE STUDY // TECHNICAL NARRATIVE

Hirenix

Full-Stack AI Career Intelligence Platform & Semantic Resume Matching Engine

YOUR ROLE & SCOPESolo Lead Architect & Full-Stack AI Engineer
TIMELINE2 Months
CORE CONSTRAINTSSub-200ms vector search latency on serverless PostgreSQL DB while orchestrating multi-provider LLM calls.
error_outline

1. THE PROBLEM

ATS keyword matching misses contextual candidate experience and codebase quality, while job seekers lack objective feedback on application alignment. Existing screening tools rely on static keyword matching rather than semantic similarity.

account_tree

SYSTEM ARCHITECTURE & PIPELINE FLOW

4 STAGE PIPELINE
STAGE 01. INGESTION1

Candidate Document & Repo Parser

Async FastAPI ingests Resume PDF, GitHub repository commit history, and LinkedIn profile into normalized candidate JSON representation.

STAGE 02. EMBEDDING2

OpenAI Text Embedding & pgvector Indexing

Generates 1536-dimensional embeddings co-located with relational candidate data in Supabase pgvector (<200ms vector search).

STAGE 03. EVALUATION3

GPI Code Quality & ATS Match Scoring

GitHub Production Index (GPI) algorithm scores code complexity, commit consistency, and stack diversity alongside ATS match precision.

STAGE 04. SIMULATION4

Groq Real-Time Voice Interview Evaluator

Decouples speech analysis to Groq LPU hardware for sub-2-second voice interaction and real-time interview evaluations.

architecture

2. TECHNICAL APPROACH & DECISIONS

1Hybrid Semantic Embedding & Vector Search

✓ DECISION CHOSEN

Engineered an async FastAPI backend combining exact ATS keyword extraction with text-embedding-3-small vector embeddings stored in Supabase pgvector.

✕ REJECTED ALTERNATIVE

External Vector SaaS (Pinecone / Qdrant)

Co-locating relational candidate profiles and vector embeddings inside PostgreSQL eliminated cross-service network hops and guaranteed atomic transaction updates.

2Multi-Provider LLM Orchestration

✓ DECISION CHOSEN

Utilized Groq API (LLaMA 3) for ultra-fast real-time voice interview evaluation (<2s latency) and NVIDIA NIM for candidate analytical indexing.

✕ REJECTED ALTERNATIVE

Single API provider fallback loop

Decoupling real-time speech evaluation to Groq's LPU hardware achieved sub-2-second voice response latencies needed for realistic interview simulation.

code

CORE ARCHITECTURAL LOGIC

pythonservices/hybrid_search.py

Co-located PostgreSQL pgvector cosine similarity search combined with ATS metadata filtering in an async FastAPI endpoint.

services/hybrid_search.py
1@app.post("/api/v1/candidates/search", response_model=List[CandidateMatch])
2async def search_candidates(
3 request: JobSearchRequest,
4 db: AsyncSession = Depends(get_db_session)
5):
6 # Generate vector embedding for input job description
7 query_vector = await embedding_service.get_vector(request.job_description)
8
9 # Execute pgvector cosine similarity match co-located inside PostgreSQL
10 stmt = (
11 select(Candidate, Candidate.embedding.cosine_distance(query_vector).label("distance"))
12 .where(Candidate.is_active == True)
13 .order_by(text("distance ASC"))
14 .limit(request.top_k)
15 )
16 results = await db.execute(stmt)
17 return [
18 CandidateMatch(candidate=row.Candidate, match_score=round(1.0 - row.distance, 4))
19 for row in results
20 ]
balance

3. TRADE-OFFS & HONEST REFLECTION

Truncated resume PDF text extractions to 4,000 tokens before embedding to maintain sub-200ms API response times. Reduced vector storage overhead by 60% with negligible loss in semantic matching precision.

task_alt

4. CONCRETE OUTCOME & METRICS

Shipped an end-to-end career intelligence SaaS platform featuring sub-200ms vector matching, a custom GitHub Production Index (GPI) code quality evaluator, and real-time voice interview simulation.

< 200msAPI Response Latency
Supabase pgvectorVector Store
< 2s Voice EvalInterview Latency
Explore Project Sources
Review live deployment or inspect codebase on GitHub.