Overview
SnappyCVs is a web application that helps job seekers maintain a single, canonical professional profile and use it to generate tailored resumes, cover letters, and fit scores for any job posting—all with AI-powered intelligence and evidence-based grounding.
- Single source of truth: One structured profile containing all work experience, skills, projects, and achievements
- Fit scoring: AI-powered analysis that scores job fit (0–100) with clear strengths, gaps, and actionable feedback
- Tailored generation: ATS-friendly resumes and personalized cover letters grounded in profile evidence
- Application tracking: Full pipeline management from saved jobs through offers
Problem
Job hunting is broken. Candidates struggle with fragmented tools, inconsistent documents, and no clear signal on whether they're a good fit.
Document chaos
- Multiple conflicting resume versions
- Tedious manual tailoring per job
- Cover letters that take hours to personalize
ATS uncertainty
- Keyword optimization feels like guesswork
- Resumes too long or unfocused
- Formatting that breaks on parsing
No feedback loop
- No honest fit assessment per job
- Gaps are invisible until rejection
- Tracking applications is fragmented
Solution
SnappyCVs provides an end-to-end workflow: import your experience once, score your fit against any job, generate tailored documents, and track your applications—all from a single, unified platform.
Core workflow
- Build your profile: Import from LinkedIn, JSON Resume, or plain text—or use the guided form
- Paste a job posting: System parses it into structured requirements automatically
- Review your fit: Get a score, see matched strengths with citations, and identify gaps
- Generate documents: Create ATS-optimized resumes and personalized cover letters
- Export and apply: Download PDF/DOCX and track application status
Architecture
Built on AWS with a modern serverless-first approach, designed for reliability, security, and cost efficiency.
Frontend & application
- Next.js 16 + React 19: App Router with TypeScript for type safety
- Tailwind CSS 4.x: Utility-first styling with custom theming
- Radix UI: Accessible component primitives
- Drizzle ORM 0.45: Type-safe database access with migrations
Infrastructure (AWS)
- ECS Fargate: Containerized web + worker services
- RDS Postgres: JSONB for flexible profile storage
- S3: PDF storage with presigned URLs
- Cognito: Authentication with Hosted UI
- Terraform: Infrastructure as code
Data model highlights
Professional profile
Canonical JSONB with versioned schema (v2). Supports contact info, work experience, projects, skills, education, certifications, and more.
Job management
Parsed job requirements, application status pipeline, priority levels, tags, notes, and activity timeline per job.
Generated content
Tailored resumes and cover letters with configuration, HTML snapshots, citations, and export tracking.
Key features
Fit scoring with citations
- Overall fit score (0–100) with category breakdown
- Strengths section citing specific profile evidence
- Gaps framed as missing evidence with remediation suggestions
- Red flags for core missing requirements
- Reproducible scoring given same profile version + job post
Tailored resume generation
- Configurable target length (1-page default, 2-page option)
- Tone presets: direct, conversational, formal
- Theme selection: minimal (free), professional, modern (Pro)
- Fit-to-page engine with transparent compression
- Inline editing without regenerating AI content
Cover letter composer
- Tone options: formal, conversational, enthusiastic
- Length presets: concise, standard, detailed
- Per-paragraph regeneration with custom instructions
- Citation tracking to profile evidence
- Quality checklist with automated scoring
Application tracking dashboard
- Pipeline stages: saved → applied → interviewing → offer
- Filtering by status, priority, remote type, tags, date range
- Bulk operations for status changes and metadata updates
- Activity timeline per application
- Dashboard insights: best matches, needs attention, recent activity
Export & billing
- PDF export via Playwright worker with presigned S3 URLs
- DOCX export for cover letters
- Stripe subscriptions with webhook-driven entitlements
- Free tier with usage limits; Pro tier ($15/mo) for unlimited
- Customer portal for self-service billing management
AI pipeline
A multi-step AI pipeline with grounding requirements ensures generated content is truthful and evidence-based.
| Pipeline step | Output & constraints |
|---|---|
| 1. Parse job posting | Structured JSON: title, company, responsibilities, required/preferred skills, seniority signals, domain keywords |
| 2. Score fit | Score (0–100), strengths with citations, gaps with remediation, red flags; low temperature (0.1–0.3) for consistency |
| 3. Generate resume | Structured model with section ordering, bullet IDs, rewritten text, and citations back to profile nodes |
| 4. Generate cover letter | Paragraph-level generation with evidence sources; higher temperature (0.7) for creative writing |
Grounding requirements
- Generated bullets must cite profile nodes
- No claims without a source reference
- Cover letter paragraphs track evidence sources
Provider flexibility
- OpenAI as default provider
- Anthropic as user-configurable alternative
- Consistent interface via AI client factory pattern
Outcomes
Delivered capabilities
- Full authentication system with Cognito + server sessions
- Profile CRUD with versioning and multiple import formats
- Job parsing and fit scoring with evidence citations
- Tailored resume generation with fit-to-page engine
- Cover letter composer with per-paragraph control
- Application tracking dashboard with pipeline visualization
- PDF/DOCX export via async worker pipeline
- Stripe billing with webhook-driven entitlements
- Admin dashboard with user management and moderation
- GDPR-compliant data export and account deletion
Building AI-powered SaaS?
SnappyCVs showcases end-to-end SaaS delivery: LLM integration, Stripe billing, AWS infrastructure, and production-grade UX. If you're tackling similar challenges or need someone who can ship the full stack, let's talk.