Case study
JobRadar
A personal job radar: collects openings, scores them against my profile, drafts honest applications. Nothing is sent without a click.
- Python
- FastAPI
- SQLite
- Gemini
- Google Apps Script
- Web Push
- PWA

The problem
Job hunting across many boards is noisy. I wanted one inbox of relevant roles, scored honestly, with drafts that only use true facts about me.
What I built
- Collectors for public feeds and APIs plus my own alert emails (via Apps Script), with dedupe and free rule-based filters before any AI call.
- Batched AI scoring (lite models first, per-model quota rests) with an explainable score: skills, seniority, pay, eligibility, preferences.
- Drafts and tailored CVs built only from a source-of-truth profile, with honesty checks; sending goes through Gmail on approval only.
- Pipeline stages, follow-ups, interview prep and stats; works on phone and desktop.
Highlights


Try it
Re-weight the score
Move the weights and watch three sample jobs re-score, the way JobRadar explains its numbers.
How it works
- 1Feeds + alert emails
- 2Dedupe + free filters
- 3Batched AI scoring
- 4Inbox
- 5Approved drafts
- 6Gmail send
Engineering notes
- Respects each site's terms: official APIs, RSS and my own alert emails only; no scraping.
- Still in progress; built and deployed in its first two days.
How I build
Designed, built, tested and deployed by me with an AI coding assistant (Claude Code): I set the requirements, review every change, test on scratch copies with fake data, and run it in production.