Inspiration
The traditional hiring process is broken — it's slow, biased, and overwhelmingly manual. HR teams drown in hundreds of resumes, conduct repetitive screening calls, and still end up making inconsistent decisions. We asked ourselves: what if AI could handle the entire hiring pipeline end-to-end, from resume screening to the final interview? That question became CoreHireAI.
We were inspired by how platforms like HackerRank and Interviewing.io solve fragments of this problem, but none of them offer a single, unified pipeline that takes a candidate from application → ATS screening → aptitude testing → coding assessment → AI-powered live interview — all in one platform.
What it does
CoreHireAI is a full-stack AI-powered recruitment platform that automates every stage of the hiring funnel:
- Job Board & Applications — Admins post job openings; candidates browse, search, and apply with resumes and cover letters.
- AI-Powered ATS Scoring — Resumes are instantly scored against job descriptions on three dimensions: keyword match, formatting quality, and JD relevance, producing a weighted 0–100 score with actionable feedback.
- OIR Aptitude Testing — Shortlisted candidates take timed Officer Intelligence Rating tests with image-based and text-based MCQs, auto-graded in real time.
- Live Coding Assessments — Candidates solve coding problems in Python, JavaScript, C++, or Java with a built-in code editor and compiler. Solutions are evaluated against hidden test cases with instant pass/fail feedback.
- AI Live Interview (Gemini Live) — The crown jewel: a real-time, voice + video AI interview powered by Google Gemini Live API. The AI interviewer conducts a natural conversation, asks follow-up questions, and an Observer Agent monitors the transcript to inject intelligent cross-questions. After the interview, a Final Analysis Agent generates an OLQ (Officer-Like Qualities) assessment.
- Proctoring System — WebSocket-based dual-device proctoring (browser + mobile camera) ensures exam integrity during assessments.
- Admin Dashboard — Full visibility into all applications, stage-wise results, and the ability to manage jobs, tests, and coding problems.
Candidates are automatically advanced or rejected at each stage — the pipeline is fully automated.
How we built it
- Backend: Python + FastAPI with SQLAlchemy ORM and SQLite database. RESTful APIs for CRUD operations, JWT-based authentication with role-based access control (admin vs. candidate).
- Frontend: React 19 + Vite with TailwindCSS v4, React Router v7, and TanStack React Query for data fetching. Lucide icons for a clean UI.
- AI Interview Engine: Google Gemini Live API with real-time WebSocket relay (Browser ↔ FastAPI ↔ Gemini). Features include:
- Audio/video streaming in PCM 16kHz format
- Automatic session reconnection at the 7-minute Gemini limit (seamless to the candidate)
- Audio buffering and replay during reconnects so no speech is lost
- Transcript capture via Redis for observer and analysis agents
- Observer Agent: A LangGraph-based agent that reads the live transcript every few turns and injects cross-questioning prompts into Gemini to probe deeper.
- Final Analysis Agent: Post-interview, analyzes the full transcript and produces an OLQ assessment.
- Code Execution: Local sandboxed execution supporting Python, JavaScript, C++, and Java with subprocess isolation and timeout protection.
- Proctoring: WebSocket signaling server that pairs a candidate's browser with their mobile camera for dual-view monitoring.
Challenges we ran into
- Gemini Live 7-minute session limit: The API closes sessions after ~7 minutes. We built a silent reconnection system that detects when the candidate is mid-speech, buffers their audio, opens a new Gemini session, injects the conversation context, replays the buffered audio, and resumes — all without the candidate noticing.
- Real-time audio relay: Getting browser microphone PCM audio to stream reliably through FastAPI WebSockets to Gemini Live required careful base64 encoding, chunking, and error handling for dropped connections.
- Multi-stage pipeline orchestration: Automatically advancing candidates through 5+ stages (apply → ATS → OIR → coding → interview) based on scores required careful database state management and status transitions.
- Code execution security: Running arbitrary user-submitted code safely required subprocess isolation, strict timeouts, and temporary directory sandboxing.
Accomplishments that we're proud of
- Built a complete, end-to-end AI hiring pipeline — not just one piece, but the entire funnel from job posting to final AI interview assessment.
- The seamless Gemini session reconnection during active speech is a technical achievement we're particularly proud of — it solves a real limitation of the API without degrading the candidate experience.
- Zero-dependency AI interview: Candidates just open their browser — no downloads, no plugins, no Zoom links. The AI interview happens entirely in-browser with real-time voice and video.
- A working multi-language code judge that compiles and evaluates code against hidden test cases, fully integrated into the hiring pipeline.
What we learned
- How to work with Google Gemini's Live API for real-time multimodal conversations and handle its session lifecycle gracefully.
- Building WebSocket relay architectures that bridge browser clients with external AI services while maintaining state and handling reconnections.
- The importance of automated state machines in multi-stage workflows — manual status management doesn't scale.
- How to design role-based systems where the same platform serves both admins and candidates with entirely different experiences.
What's next for CoreHireAI
- LLM-powered ATS: Replace the keyword-matching heuristic with a full Gemini-based semantic analysis for more accurate resume scoring.
- Interview Analytics Dashboard: Visualize OLQ scores, speech patterns, confidence metrics, and comparison across candidates.
- Video Recording & Playback: Record interview sessions so HR teams can review AI interview highlights.
- Multi-tenant Support: Allow multiple companies to use CoreHireAI with isolated job boards and candidate pools.
- Production Deployment: Migrate from SQLite to PostgreSQL, add Redis persistence, and deploy on cloud infrastructure with Docker.
Built With
- fastapi
- google-gemini
- javascript
- python
- react
- sqlalchemy
- sqlite
- tailwindcss
- vite
- websockets
Log in or sign up for Devpost to join the conversation.