Problem Statement
Hiring is usually fragmented across application tracking, CV review, testing, and final decisions. Candidates lack a clear path from finding a job to being evaluated, and recruiters spend hours screening CVs by hand instead of focusing on the best applicants.
Proposed Solution
VerdexAI puts the whole hiring lifecycle in one platform. Candidates apply with a PDF CV that is parsed and scored by AI against the job requirements, HR ranks applicants by score, and job-specific assessments are generated automatically. Selected candidates move through interview and onboarding stages, and role-based access keeps candidate, HR, and admin actions separate.
Key Features
- PDF CV upload with AI parsing and scoring against each job's requirements.
- HR job management: create, open, and close postings, with applicants ranked by AI score.
- AI-generated, job-specific MCQ assessments with scoring and answer review, plus a fallback question set if generation fails.
- Interview scheduling and hiring pipeline stages driven by application status, with email notifications through Resend.
- Onboarding tracker with progress steps for finalized hires.
- Role-based access for candidates, HR, and admins, enforced with Firebase token verification and role middleware.
System Architecture Flow
Engineering Challenges
- AI output and PDF extraction can fail unpredictably, so failures are caught in the application flow and a fallback question set is used when assessment generation fails.
- Three user types share one system, so every request is authenticated with Firebase tokens and checked by role middleware to keep candidate, HR, and admin actions separate.
- A hiring process has many stages, so applications move through explicit status transitions and onboarding steps instead of free-form updates.
Lessons Learned
- Building and deploying a complete product alone, from database design to frontend and hosting.
- Wrapping AI calls in resilient services that handle file input and model output variability.
- Separating user journeys and enforcing access rules consistently across frontend and backend.
Results
Deployed with the frontend on Vercel and the backend on Railway, with a demo walkthrough video on YouTube: https://youtu.be/s-M_aoWDOkM