Job postings are one of the most underrated public data sources on the internet. Recruiters use them to spot placement opportunities, B2B teams read them as buying signals (a new Head of Data means data-tooling budget), and job seekers want to apply on day one — not when a posting finally reaches the aggregators.
The usual instinct is to scrape career pages. Don't. Most tech companies host their careers page on one of a handful of Applicant Tracking Systems (ATS), and the four biggest ones — Greenhouse, Lever, Ashby and SmartRecruiters — all expose public, documented JSON APIs. No auth. No proxies. No brittle HTML selectors. The career page itself loads the same JSON you're about to fetch.
In this tutorial we'll build a single-file Python tool that:
fetches every open job for a company from any of the four ATS,
auto-detects which ATS a company uses,






