←Back to Works / Projects
AI & ML//Full-Stack
LIVE SYSTEM
AI & MLFull-Stack

Hirenix

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

Stack:Next.jsTypeScriptFastAPIGroq APINVIDIA NIMSupabase pgvectorDocker
YOUR ROLE & SCOPESolo Lead Architect & Full-Stack AI Engineer
TIMELINE2 Months
CORE CONSTRAINTSSub-200ms vector search latency on serverless PostgreSQL while orchestrating multi-provider LLMs
DEPLOYMENTVercel (Next.js) + Render (FastAPI) + Supabase (pgvector)
error_outline

// 01. 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

// 02. SYSTEM ARCHITECTURE & PIPELINE FLOW

STAGE 01INGESTION

Candidate Document & Repo Parser

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

STAGE 02EMBEDDING

OpenAI Text Embedding & pgvector Indexing

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

STAGE 03EVALUATION

GPI Code Quality & ATS Match Scoring

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

STAGE 04SIMULATION

Groq Real-Time Voice Interview Evaluator

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

balance

// 03. TECHNICAL APPROACH & DECISION MATRIX

01Hybrid Semantic Embedding & Vector Search

✓ DECISION CHOSEN

FastAPI + Supabase pgvector co-located with relational DB

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

✕ REJECTED ALTERNATIVE

External Vector SaaS (Pinecone / Qdrant)

External services introduced duplicate data syncing pipelines, extra network latency, and severed relational joins.

02Multi-Provider LLM Orchestration

✓ DECISION CHOSEN

Groq LPU (LLaMA 3) for real-time speech + NVIDIA NIM for analytical scoring

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

✕ REJECTED ALTERNATIVE

Single API Provider Fallback Loop

Standard cloud providers suffered from 4-8 second TTFT spikes, breaking natural conversational flow.

terminal

// 04. CORE ARCHITECTURAL LOGIC

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

services/hybrid_search.py
1234567891011121314151617181920
@app.post("/api/v1/candidates/search", response_model=List[CandidateMatch]) async def search_candidates( request: JobSearchRequest, db: AsyncSession = Depends(get_db_session) ): # Generate vector embedding for input job description query_vector = await embedding_service.get_vector(request.job_description) # Execute pgvector cosine similarity match co-located inside PostgreSQL stmt = ( select(Candidate, Candidate.embedding.cosine_distance(query_vector).label("distance")) .where(Candidate.is_active == True) .order_by(text("distance ASC")) .limit(request.top_k) ) results = await db.execute(stmt) return [ CandidateMatch(candidate=row.Candidate, match_score=round(1.0 - row.distance, 4)) for row in results ]
task_alt

// 05. 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.

query_stats

// 06. CONCRETE OUTCOMES & VERIFIED METRICS

< 200ms
API Response Latency
Co-located Supabase pgvector cosine search
< 2s
Voice Feedback Loop
Groq LPU real-time speech evaluation
50+ Nodes
Skill Taxonomy Graph
Categorized candidate technical capabilities