elliottdehn/open-jobs
~3M live jobs from 36 ATS, enriched with LLM-extracted fields + embeddings, released CC0. Includes agent tooling to search them (hull -> learn -> rank).
What it solves
Open Jobs addresses the problem of "ghost jobs" and stale listings on traditional job boards, which often keep dead postings active to make their platforms look full. It provides a transparent, verified dataset of job openings by crawling company career sites directly and grading each listing based on its actual age and behavior.
How it works
The system uses a distributed crawling architecture with 65,000 Cloudflare Durable Objects to monitor company career sites daily. It records the exact date a posting is first seen to prevent "re-stamping" (where companies claim a job is newer than it is).
A nightly batch process trains estimators for salary, seniority, and work arrangement, and generates a search index using embeddings. Users can search for jobs via a browser or an AI agent; the system embeds the user's request, finds the nearest job groups in the index, and performs ranking and filtering locally on the user's machine to ensure privacy.
Who it’s for
- Job seekers who want to avoid wasting time on stale or fake listings.
- AI Agent users (e.g., Claude Code, Cursor) who want to automate the shortlisting of eligible job matches.
- Data scientists and developers who need a high-quality, embedded dataset of millions of open job postings for analysis or application building.
Highlights
- Verified Grading: Labels jobs as Fresh, Stale, Re-stamped, or Ghost based on crawler data.
- Agent-Ready: Includes a plugin for Claude Code and tools for other AI agents to interview the user and shortlist jobs.
- Privacy-First: Search ranking and personal data (resumes, labels) stay on the local machine.
- Massive Dataset: Provides access to 3.1 million postings with 1536-dimensional embeddings.
- Open Data: Offers the entire search index and historical diffs as downloadable static files.
Related
- Project
- Project
- Project
- Project