Skip to content

pthpv95/devjob-ai

Repository files navigation

Project Summary: Functional Requirements Project Name: JobMatch AI Goal: Build a fullstack job board platform where job seekers upload resumes, receive AI-driven match scores and explanations for jobs, and apply easily — while employers post jobs and view ranked applicants based on AI analysis. User Roles

Job Seeker (default after signup) Employer/Recruiter (can be selected during signup or upgraded) Admin (optional stretch — moderate content, view stats)

Core Functional Requirements (prioritized)

Authentication & Profiles Signup / Login / Logout (email + password, optional Google OAuth) Role selection (Seeker / Employer) Profile completion: Seeker: name, location, experience level, skills (manual + auto-extracted), resume PDF upload Employer: company name, logo, description, website

Job Posting (Employer) Create / Edit / Delete job postings Fields: title, company, location (remote/onsite/hybrid), salary range, job type (full-time/contract), description, required skills (array), experience level, tags/tech stack Status: open / closed / draft

Job Browsing & Search (Seeker) List all open jobs (paginated / infinite scroll) Advanced filters: keywords, location, remote, salary min/max, experience, tech stack/skills, job type Sort: newest, relevance (AI match score if logged in), salary View job detail page

Resume Upload & AI Parsing (Seeker) Upload PDF resume (single file, <5MB) Backend extracts text → sends to AI (OpenAI/Gemini/HuggingFace) Parse & store structured data: full name, email, phone (if present), skills array, years of experience, education (degrees + institutions), work history (job titles + companies + durations) Display extracted info to user for review/correction

AI Job Matching & Scoring For logged-in seeker: On job list / detail page: show personal match score (0–100) + short explanation

Calculation options: Simple: overlap % of required vs extracted skills + experience check Advanced: semantic similarity (embeddings of job desc vs resume text) + weighted score (skills 50%, experience 20%, education 15%, location/remote match 15%)

Show "why this job fits" highlights (matching keywords/skills)

Job Application (Seeker) Apply to job (one-click if resume already uploaded) Optional: custom cover letter / additional questions Track application status (applied → reviewed → interviewed → rejected/hired)

Applicant Management & AI Ranking (Employer) View list of applicants for each job Sort by AI match score (highest first) See applicant details: extracted resume highlights, score explanation, download original PDF Change application status + add private notes

Additional / Nice-to-have Features Save jobs / saved applicants Notifications: email or in-app (new matching jobs / new applicants) Dashboard: seeker (match stats, applied jobs), employer (posted jobs stats) Resume improvement suggestions (AI-generated: "Add these keywords from recent jobs...")

Non-Functional Notes (for interviews)

Secure file handling (no public resume URLs) Rate limiting on AI calls (cost control) Privacy: resumes only visible to applied employers Responsive + good UX

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors