Resume builder
Team led by AI engineer Abhiyan Singh (Voice AI, aipersa.com) building a labour-up ML/Voice product; investor-seeking—attending LIGHTSPEED Nashville 9/5/2025.
YouTube Video
Project Description
Upload a resume (we find and fix gaps) or start from scratch by role (Plumber, Student, General, etc.). Laborup then asks only the missing questions via chat or voice, fills a structured JSON, and exports a polished DOCX.
Functionality (works now):
Upload PDF/DOCX → parse → follow-ups on missing fields.
Start from scratch by category with role-specific schemas & priority paths.
Voice loop: TTS asks → mic records → ASR transcribes → exact JSON field filled; “skip” anywhere.
AI polish → preview → DOCX download.
Customer validation:
Built directly for the challenge pain (incomplete blue-collar resumes).
Internal pilot runs show voice reduces typing; year-only dates common; bullet prompts help recall.
Next: short sessions with warehouse/delivery/housekeeping workers + 1–2 recruiters to capture completion time & edit burden.
Design & UX:
One toggle for voice, single mic button, each question also shown with examples.
Live JSON view; deterministic fallbacks so users never get stuck.
Feasibility (market & path):
Users: blue-collar job seekers. Buyers: agencies, workforce boards, training programs.
Path: free worker tool → B2B seats/API (ATS export, bulk invites, analytics).
Team execution:
Single, clean app.py delivering parsing, schema logic, dynamic Q&A (chat/voice), polish, and DOCX export.
Technologies (required)
Python, Streamlit
OpenAI: gpt-4o-mini (extraction & Q&A), gpt-4o-mini-tts (TTS), gpt-4o-mini-transcribe (ASR)
Parsing/Output: pypdf (+ PyPDF2 fallback), python-docx, Jinja2
Audio UI: audio-recorder-streamlit
Utilities: re, json, io, tempfile
Architecture & Deployment (short)
State: st.session_state.resume as canonical JSON; role priority lists select the next field.
Loop: TTS → mic → ASR → set_field_by_path() → repeat until complete.
Render: Jinja2 → preview → python-docx → DOCX.
Toggle 🎙️ Voice interview (beta) and follow prompts.
User research (required)
Plan: 10–15 worker interviews + 1–2 recruiters; measure time-to-DOCX, completion rate, field coverage, re-record rate, and post-polish edits.
Early pilot learning: voice reduces friction; allow year-only + “Present”; example bullets speed recall.
Metrics, Next Steps, Risks
Key metrics: completion rate to DOCX; median time-to-resume (<10 min); coverage of company/title/dates/location/licenses; re-record rate; polish edit burden.
Next steps (includes your request):
Outbound AI phone agent to call applicants directly, conduct the interview, and auto-fill the resume.
Core call chunk is already built; integration with this resume builder is planned (took longer than demo window).
Multilingual prompts (ES/NE), license/cert capture with photo upload, ATS/job-board exports, phone IVR fallback, agency dashboard.
Risks & mitigations: ASR errors (confirm & re-record); over-polish (never invent facts; flag AI-added text); privacy (clear export/delete); adoption (workforce board/agency partners).
TL;DR: Upload or start by role, answer only what’s missing (chat or voice), and download a professional DOCX—fast. Roadmap: add AI outbound calls to interview applicants automatically and fill the resume end-to-end.
Prior Work
Everything was created during the hackathon period.