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
Log in or sign up for Devpost to join the conversation.