One search across every board. One click to tailor your CV. One place to track it all.
Your ironman suit for job hunting. You still apply to every job yourself. JobOps just makes you ten times faster.
800+ users · 4,000+ job searches run · #3 on GitHub Trending for TypeScript
JobOps searches LinkedIn, Indeed, Glassdoor and 10+ job boards from one screen, rewrites your CV for each role, scores your fit, checks visa sponsorship status, and tracks every application in one place.
It does not auto-apply. Recruiters can tell when applications are automated and it gets you blacklisted. JobOps gives you the speed without sacrificing quality.
wait-at-start-mp4-hq.mp4
Prefer a guided walkthrough? Follow the Self-Hosting Guide.
git clone https://github.com/DaKheera47/job-ops.git
cd job-ops
docker compose up -dOpen http://localhost:3005 and follow the onboarding wizard. You'll be searching in under 10 minutes.
| Step | What happens |
|---|---|
| Search | Scrapes 10+ job boards for roles matching your criteria |
| Score | AI ranks each job 0-100 against your profile |
| Tailor | Generates a rewritten CV matched to each job description |
| Export | Creates a polished PDF locally, or via Reactive Resume |
| Track | Connects to Gmail and auto-detects interviews, offers, and rejections |
| Platform | Focus |
|---|---|
| Global | |
| Indeed | Global |
| Glassdoor | Global |
| Adzuna | Multi-country API |
| Hiring Cafe | Global |
| startup.jobs | Startup/remote roles |
| Working Nomads | Remote-only |
| Gradcracker | STEM/Grads (UK) |
| UK Visa Jobs | Sponsorship (UK) |
| Golang Jobs | Go developers |
| Seek | Australia/NZ (via Apify) |
Custom extractors can be added via TypeScript. See the extractor docs.
Connect your Gmail and JobOps watches for recruiter replies automatically.
- "We'd like to invite you to interview..." → Status updates to Interviewing
- "Unfortunately we won't be progressing..." → Status updates to Rejected
No manual updates. No spreadsheets. See the tracking docs for setup.
JobOps works with the model provider you already use:
- Codex (local app-server in Docker, authenticated with
codex login) - OpenAI
- Google Gemini
- OpenRouter
- Any OpenAI-compatible endpoint (Ollama, LM Studio, etc.)
Don't want to self-host? JobOps Cloud gives you your own hosted instance with nothing to install.
| BYOK | Zero Setup | |
|---|---|---|
| Price | £20/month | £30/month |
| All features | ✓ | ✓ |
| Your own instance | ✓ | ✓ |
| Managed updates | ✓ | ✓ |
| AI provider | Bring your own key | Included, no config needed |
| Get Started | Get Started |
Self-hosted will always be free and open source.
- Documentation Home
- Self-Hosting Guide
- Feature Overview
- Orchestrator Pipeline
- Extractor System
- Troubleshooting
Contributions are welcome. Whether it's code, docs, or new extractors, start with CONTRIBUTING.md.
JobOps includes anonymous usage analytics (Umami) to help improve the product. To opt out, block umami.dakheera47.com in your firewall or DNS.
AGPLv3 + Commons Clause
You can self-host, use, and modify JobOps freely. You cannot sell the software itself or offer paid hosted services whose value substantially comes from JobOps. See LICENSE.
Built by Shaheer Sarfaraz
Website · Cloud · Documentation · Ko-fi