Mock Job Interview
A prototype AI interviewer that reads your CV and holds a real-time voice or text conversation.
PythonReactLiveKitOpenAI

What it is
A prototype interview agent built with LiveKit Agents (Python) on the backend and a React web frontend. The agent parses a candidate's CV PDF, greets them by name, and asks questions tailored to the specific projects and skills on their resume. It supports both typed answers (with browser speech recognition on top) and real-time voice conversation via server-side Google STT.
Key features
- CV-aware personalization: extracts names, companies, and skills from the uploaded CV and weaves them into the questions instead of asking generic ones.
- Dual input modes: a Review mode with browser-side speech recognition into editable text, and a Live mode that streams microphone audio to Google STT for real-time voice turns.
- STT keyword boosting: the CV's key terms are passed to Google STT as phrase hints, which noticeably improves transcription accuracy for names and domain vocabulary.
- Two-stage flow: self-introduction then past-experience discussion. LLM tool calls drive the stage transitions naturally; a time-based fallback kicks in if the normal trigger misses.
- Transcript persistence: the full conversation is saved to disk at session end for later review.
Tech
LiveKit Agents for backend orchestration, Google STT for real-time transcription, OpenAI for the conversational LLM, React for the web frontend. Candidate state persists across agent stages via LiveKit's shared userdata.
Status
This is a prototype I built to explore what voice-first AI agents look like end to end. The repository has the full source code and a detailed README; there is no hosted live demo. If you want to run it locally or deploy your own, the README walks through LiveKit setup, environment variables, and the frontend build.