Profile
Back to NewsBack
GitHub Trending 3 min
Reader Mode
DaKheera47/job-ops: job-ops: DevOps principles applied to job hunting. A self-hosted pipeline to track, analyze, and assist your application process

DaKheera47/job-ops: job-ops: DevOps principles applied to job hunting. A self-hosted pipeline to track, analyze, and assist your application process

20 hours ago

JobOps

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.


DaKheera47%2Fjob-ops | Trendshift

Stars</a> GHCR</a> Release</a> Contributors</a>


800+ users · 4,000+ job searches run · #3 on GitHub Trending for TypeScript


JobOps Dashboard


What is JobOps?

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.

https://github.com/user-attachments/assets/ec5bc249-aad5-41f2-b1ff-f7b3b6e6f7b8


Quick Start

Prefer a guided walkthrough? Follow the Self-Hosting Guide.

git clone https://github.com/DaKheera47/job-ops.git
cd job-ops
docker compose up -d

Open http://localhost:3005 and follow the onboarding wizard. You'll be searching in under 10 minutes.


How It Works

| 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 |


Supported Job Boards

| Platform | Focus | |----------|-------| | LinkedIn | 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) | | WUZZUF | Egypt (Job Board) | | Khamsat | Egypt (Freelance) |

Custom extractors can be added via TypeScript. See the extractor docs.


Post-Application Tracking

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.

AI Providers

JobOps works with the model provider you already use:

  • Atlas Cloud
  • Codex (local app-server in Docker, authenticated with codex login)
  • OpenAI
  • Claude (Anthropic)
  • GLM / Zhipu AI
  • Google Gemini
  • OpenRouter
  • Any OpenAI-compatible endpoint (Ollama, LM Studio, etc.)

Cloud

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 |

Hosted instances may enforce per-user monthly quotas for expensive actions such as searches, AI tailoring, Ghostwriter generations, and PDF exports. When a hosted quota is exhausted, the action is blocked with a clear API error; local self-hosted/default mode is unaffected unless hosted quotas are explicitly enabled.

Self-hosted will always be free and open source.


Documentation


Contributing

Contributions are welcome. Whether it's code, docs, or new extractors, start with CONTRIBUTING.md.


Special Thanks

Open-source tools and communities that make JobOps possible:

  • jobspy — Python-based multi-source job scraping library powering the jobspy extractor

Star History


Analytics

JobOps includes anonymous usage analytics (Umami) to help improve the product. To opt out, block umami.dakheera47.com in your firewall or DNS.

License

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.


Chat with me