Inspiration
Job searching is stressful because the work is scattered across too many steps: finding roles, reading job descriptions, tailoring a resume, filling out applications, and then preparing for interviews. HirePilot was built to make that workflow feel less fragmented. The idea was to create one focused assistant that helps a candidate move from “I found a job” to “I’m ready to apply and interview” with less repetitive manual work.
What it does
HirePilot helps candidates manage a job search workflow with AI-assisted resume and interview tools. Users can upload a base resume, extract structured profile details, generate job-targeted resume content, search and apply through browser automation, and practice interviews with a live voice-based AI coach.
The interview preparation flow uses a streaming voice agent that can ask role-specific questions, listen to answers, transcribe the conversation, and respond with feedback in real time.
How we built it
We built HirePilot as a Next.js app with React and TypeScript. The frontend provides separate workspaces for resume management, job search/application runs, settings, and interview preparation. The backend uses Next.js API routes for resume import, profile extraction, targeted resume generation, LiveKit session tokens, and agent-driven workflows.
For AI features, we used OpenAI-compatible APIs to extract resume information, generate tailored resume plans, and power interview coaching. LiveKit powers the realtime voice interview experience, including room creation, audio streaming, and agent participation. The application also uses browser automation to assist with job search and application flows.
Challenges we ran into
One of the hardest parts was coordinating multiple AI workflows while keeping the user in control. Resume tailoring needs to be factual and conservative, because inventing experience would hurt the candidate. Job application automation also has to handle messy real-world websites, different form layouts, validation errors, and file uploads.
The realtime interview feature introduced another challenge: voice interaction needs to feel immediate. We had to connect the UI, LiveKit room state, agent startup, transcription, and conversation history into one smooth experience.
What we learned
We learned how important it is to design AI tools around trust. The system should help users move faster, but it also needs clear boundaries: do not invent resume details, verify application steps, and keep interview feedback grounded in the candidate’s actual resume and target role.
We also learned a lot about combining traditional web app architecture with realtime AI agents. HirePilot brings together frontend UX, server APIs, document processing, browser automation, and live voice interaction in one product.
What's next
Next, we want to improve the application workflow with better progress tracking, richer job matching, stronger resume version history, and more detailed interview performance feedback. We also want to make deployments easier so candidates can use HirePilot as a reliable personal job-search command center.
Built With
- agent-browser
- agents
- api
- css
- livekit
- lucide
- next.js
- node.js
- openai
- react
- tailwind
- typescript
- unpdf
- zod
Log in or sign up for Devpost to join the conversation.