Job searching is tab hell.
You open LinkedIn, Indeed, RemoteOK, Glassdoor. You re-read the same listings. You copy-paste the same cover letter. You pay $30/month for tools that just aggregate feeds and call it "AI-powered."
I wanted something better. So I built JobRadar.
What It Does
JobRadar is a CLI tool that searches 8 job sources concurrently and scores every listing against your profile using a local LLM running on your machine.
python -m jobradar -q "python developer" -p profile.yaml
That's it. Eight boards searched in parallel. Every job scored 0-100. Results saved to CSV. Total time: under a minute.
The Local AI Angle
Every other job search tool I found uses cloud APIs for scoring -- OpenAI, Claude, whatever. Which means your resume, your search history, your career preferences all go to someone else's server. And you pay per token.
JobRadar runs qwen3-1.7b (1.1 GB) on your CPU via Ollama. No API keys. No subscriptions. No data leaving your machine. The AI scores each job on four dimensions:
- Skills match -- do you have what they need?
- Experience fit -- does your level match?
- Salary fit -- does it meet your range?
- Remote fit -- does it match your preference?
Each job gets a score, a rating (Excellent/Good/Fair/Poor), and a reasoning paragraph explaining why.
The 8 Sources
Most job search tools scrape 1-2 boards. JobRadar hits 8 simultaneously:
- Remotive -- remote jobs
- RemoteOK -- remote-first jobs
- Jobicy -- remote jobs with salary data
- Himalayas -- global remote jobs
- Arbeitnow -- international jobs
- Greenhouse ATS -- 15 company career pages (GitLab, Stripe, Figma, etc.)
- Ashby ATS -- 15 company career pages (OpenAI, Anthropic, Linear, etc.)
- LinkedIn -- opt-in (may violate ToS)
The Greenhouse and Ashby sources pull directly from company career page APIs. No scraping, no auth, no fragility.
How the Scoring Works
You define a profile YAML:
name: Anirudh
title: Backend Engineer
skills:
- Python
- FastAPI
- PostgreSQL
- Docker
experience_years: 5
salary_min: 120000
remote_ok: true
JobRadar sends each job description plus your profile to the local LLM and gets back structured JSON with scores and reasoning. The model runs on your CPU -- no GPU required. On my machine (15GB RAM, no GPU), it processes about 9 seconds per job.
What Makes This Different
| Feature | JobRadar | Cloud-based tools |
|---|---|---|
| AI scoring | Local LLM (free) | OpenAI API ($$) |
| Data privacy | Stays on your machine | Sent to cloud |
| Job sources | 8 concurrent | 1-3 |
| Web dashboard | Yes (Kanban) | Depends |
| License | MIT | Varies |
| Setup time | bash setup.sh |
Account + API key |
The Web Dashboard
Beyond the CLI, there's a FastAPI dashboard with a Kanban-style pipeline to track your applications. Filters, search, config editor -- all running locally on port 3000.
Tech Stack
- Python with Rich for terminal UI
- Ollama for local LLM inference (or llama.cpp)
- FastAPI for the web dashboard
- SQLite for caching
- requests + BeautifulSoup for scraping
Try It
git clone github.com/ANIRudH-lab-life/job-radar
cd job-radar
bash setup.sh # or setup.ps1 on Windows
# Pick Ollama (recommended)
python -m jobradar -q "python developer" -p profile.yaml
MIT licensed. No vendor lock-in. Your data stays yours.
GitHub: github.com/ANIRudH-lab-life/job-radar
If you find it useful, a star would mean a lot. If you have ideas for improvement, open an issue -- I read every one.
Top comments (0)