Inspiration

Vexed with job search in 2026 - I decided to automate the application process since most of the job applications need us to enter same info again and again. This project is the first step towards that.

What it does

JobSearch project will get all jobs from AshByHq job board, filter it by domain and location and match it against the master resume.

How we built it

Python scraper pulls jobs from Ashby's public API, an OpenAI-based matcher scores resume vs. JD with structured output, and an agent (OpenAI Agents SDK) chains search→fetch→score autonomously. Scoring rubric lives as a Claude Code skill file, state persists to disk.

Challenges we ran into

Scores diverged (62 vs 75) until we added explicit hard-disqualifier rules for profession mismatches. Also found a bug where location feedback did nothing — the scorer was never given the job's location to check it against.

Accomplishments that we're proud of

--interactive mode: score → feedback → auto-saved as a rubric preference → re-score, so corrections compound instead of repeating. Fixed a scoring bug that took an unrelated job from ~25 to a correct 5/100.

What we learned

Structured JSON output makes LLM scoring trustworthy, but only if the rubric encodes judgment calls explicitly. Persistent on-disk memory — not conversation memory — is what actually makes an agent improve over time.

What's next for JobSearch

Scheduled automation, a second LLM pass to verify scores, and Gmail/Calendar connectors to act on strong matches.

Built With

  • ashby's-public-job-board-api
  • openai-api-+-openai-agents-sdk
  • python
Share this project:

Updates