
Claude Jobs
- 57 installs
- 65 repo stars
- Updated February 9, 2026
- jshchnz/claude-jobs
Search job openings at tech companies using structured job board APIs
About
Queries job openings across 100+ tech companies via Greenhouse, Ashby, Lever, and Sentry APIs. Developers use it to find current roles and compare tech-company hiring.
- 100+ tech company job boards
- Greenhouse/Ashby/Lever integration
Claude Jobs by the numbers
- 57 all-time installs (skills.sh)
- Ranked #1,574 of 3,282 Productivity & Planning skills by installs in the Skillselion catalog
- Data as of Aug 2, 2026 (Skillselion catalog sync)
npx skills add https://github.com/jshchnz/claude-jobs --skill claude-jobsAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 57 |
|---|---|
| repo stars | ★ 65 |
| Last updated | February 9, 2026 |
| Repository | jshchnz/claude-jobs ↗ |
What it does
Search job openings at tech companies using structured job board APIs
Files
Job Search
Companies
| Company | Endpoint |
|---|---|
| airbnb | https://boards-api.greenhouse.io/v1/boards/airbnb/jobs |
| anthropic | https://boards-api.greenhouse.io/v1/boards/anthropic/jobs |
| cloudflare | https://boards-api.greenhouse.io/v1/boards/cloudflare/jobs |
| coinbase | https://boards-api.greenhouse.io/v1/boards/coinbase/jobs |
| datadog | https://boards-api.greenhouse.io/v1/boards/datadog/jobs |
| discord | https://boards-api.greenhouse.io/v1/boards/discord/jobs |
| dropbox | https://boards-api.greenhouse.io/v1/boards/dropbox/jobs |
| figma | https://boards-api.greenhouse.io/v1/boards/figma/jobs |
| gitlab | https://boards-api.greenhouse.io/v1/boards/gitlab/jobs |
| instacart | https://boards-api.greenhouse.io/v1/boards/instacart/jobs |
| linear | https://jobs.ashbyhq.com/linear |
| lyft | https://boards-api.greenhouse.io/v1/boards/lyft/jobs |
| netlify | https://boards-api.greenhouse.io/v1/boards/netlify/jobs |
| notion | https://jobs.ashbyhq.com/notion |
| revenuecat | https://jobs.ashbyhq.com/revenuecat |
| sentry | https://sentry.io/jobs/list.json |
| stripe | https://boards-api.greenhouse.io/v1/boards/stripe/jobs |
| vercel | https://boards-api.greenhouse.io/v1/boards/vercel/jobs |
| affirm | https://boards-api.greenhouse.io/v1/boards/affirm/jobs |
| airtable | https://boards-api.greenhouse.io/v1/boards/airtable/jobs |
| asana | https://boards-api.greenhouse.io/v1/boards/asana/jobs |
| brex | https://boards-api.greenhouse.io/v1/boards/brex/jobs |
| chime | https://boards-api.greenhouse.io/v1/boards/chime/jobs |
| clerk | https://api.ashbyhq.com/posting-api/job-board/clerk |
| cockroachlabs | https://boards-api.greenhouse.io/v1/boards/cockroachlabs/jobs |
| contentful | https://boards-api.greenhouse.io/v1/boards/contentful/jobs |
| databricks | https://boards-api.greenhouse.io/v1/boards/databricks/jobs |
| duolingo | https://boards-api.greenhouse.io/v1/boards/duolingo/jobs |
| elastic | https://boards-api.greenhouse.io/v1/boards/elastic/jobs |
| flexport | https://boards-api.greenhouse.io/v1/boards/flexport/jobs |
| gusto | https://boards-api.greenhouse.io/v1/boards/gusto/jobs |
| hubspot | https://boards-api.greenhouse.io/v1/boards/hubspot/jobs |
| lattice | https://boards-api.greenhouse.io/v1/boards/lattice/jobs |
| marqeta | https://boards-api.greenhouse.io/v1/boards/marqeta/jobs |
| mongodb | https://boards-api.greenhouse.io/v1/boards/mongodb/jobs |
| neon | https://api.ashbyhq.com/posting-api/job-board/neon |
| okta | https://boards-api.greenhouse.io/v1/boards/okta/jobs |
| opendoor | https://boards-api.greenhouse.io/v1/boards/opendoor/jobs |
| pagerduty | https://boards-api.greenhouse.io/v1/boards/pagerduty/jobs |
| peloton | https://boards-api.greenhouse.io/v1/boards/peloton/jobs |
| https://boards-api.greenhouse.io/v1/boards/pinterest/jobs | |
| postman | https://boards-api.greenhouse.io/v1/boards/postman/jobs |
| railway | https://api.ashbyhq.com/posting-api/job-board/railway |
| ramp | https://api.ashbyhq.com/posting-api/job-board/ramp |
| https://boards-api.greenhouse.io/v1/boards/reddit/jobs | |
| relativity | https://boards-api.greenhouse.io/v1/boards/relativity/jobs |
| render | https://api.ashbyhq.com/posting-api/job-board/render |
| retool | https://api.ashbyhq.com/posting-api/job-board/retool |
| ripple | https://boards-api.greenhouse.io/v1/boards/ripple/jobs |
| robinhood | https://boards-api.greenhouse.io/v1/boards/robinhood/jobs |
| samsara | https://boards-api.greenhouse.io/v1/boards/samsara/jobs |
| sofi | https://boards-api.greenhouse.io/v1/boards/sofi/jobs |
| spotify | https://api.lever.co/v0/postings/spotify |
| squarespace | https://boards-api.greenhouse.io/v1/boards/squarespace/jobs |
| supabase | https://api.ashbyhq.com/posting-api/job-board/supabase |
| tailscale | https://boards-api.greenhouse.io/v1/boards/tailscale/jobs |
| toast | https://boards-api.greenhouse.io/v1/boards/toast/jobs |
| twitch | https://boards-api.greenhouse.io/v1/boards/twitch/jobs |
| wikimedia | https://boards-api.greenhouse.io/v1/boards/wikimedia/jobs |
| ziprecruiter | https://boards-api.greenhouse.io/v1/boards/ziprecruiter/jobs |
| algolia | https://boards-api.greenhouse.io/v1/boards/algolia/jobs |
| amplitude | https://boards-api.greenhouse.io/v1/boards/amplitude/jobs |
| ashby | https://api.ashbyhq.com/posting-api/job-board/ashby |
| atlassian | https://api.lever.co/v0/postings/atlassian |
| axiom | https://boards-api.greenhouse.io/v1/boards/axiom/jobs |
| braintrust | https://api.ashbyhq.com/posting-api/job-board/braintrust |
| checkr | https://boards-api.greenhouse.io/v1/boards/checkr/jobs |
| cohere | https://api.ashbyhq.com/posting-api/job-board/cohere |
| cribl | https://boards-api.greenhouse.io/v1/boards/cribl/jobs |
| deel | https://api.ashbyhq.com/posting-api/job-board/deel |
| doximity | https://boards-api.greenhouse.io/v1/boards/doximity/jobs |
| drata | https://api.ashbyhq.com/posting-api/job-board/drata |
| faire | https://boards-api.greenhouse.io/v1/boards/faire/jobs |
| fivetran | https://boards-api.greenhouse.io/v1/boards/fivetran/jobs |
| forethought | https://boards-api.greenhouse.io/v1/boards/forethought/jobs |
| freshpaint | https://api.ashbyhq.com/posting-api/job-board/freshpaint |
| grammarly | https://boards-api.greenhouse.io/v1/boards/grammarly/jobs |
| greenhouse | https://boards-api.greenhouse.io/v1/boards/greenhouse/jobs |
| groww | https://boards-api.greenhouse.io/v1/boards/groww/jobs |
| helion | https://api.ashbyhq.com/posting-api/job-board/helion |
| immutable | https://api.lever.co/v0/postings/immutable |
| juicebox | https://api.ashbyhq.com/posting-api/job-board/juicebox |
| justworks | https://boards-api.greenhouse.io/v1/boards/justworks/jobs |
| kalshi | https://boards-api.greenhouse.io/v1/boards/kalshi/jobs |
| klaviyo | https://boards-api.greenhouse.io/v1/boards/klaviyo/jobs |
| latitude | https://boards-api.greenhouse.io/v1/boards/latitude/jobs |
| masterclass | https://boards-api.greenhouse.io/v1/boards/masterclass/jobs |
| mattermost | https://boards-api.greenhouse.io/v1/boards/mattermost/jobs |
| melio | https://boards-api.greenhouse.io/v1/boards/melio/jobs |
| mercury | https://boards-api.greenhouse.io/v1/boards/mercury/jobs |
| mixpanel | https://boards-api.greenhouse.io/v1/boards/mixpanel/jobs |
| motion | https://api.ashbyhq.com/posting-api/job-board/motion |
| mutiny | https://boards-api.greenhouse.io/v1/boards/mutiny/jobs |
| nextdoor | https://boards-api.greenhouse.io/v1/boards/nextdoor/jobs |
| onemedical | https://boards-api.greenhouse.io/v1/boards/onemedical/jobs |
| openai | https://api.ashbyhq.com/posting-api/job-board/openai |
| outreach | https://api.lever.co/v0/postings/outreach |
| plaid | https://api.lever.co/v0/postings/plaid |
| posthog | https://api.ashbyhq.com/posting-api/job-board/posthog |
| pulley | https://boards-api.greenhouse.io/v1/boards/pulley/jobs |
| replit | https://api.ashbyhq.com/posting-api/job-board/replit |
| roblox | https://boards-api.greenhouse.io/v1/boards/roblox/jobs |
| seatgeek | https://boards-api.greenhouse.io/v1/boards/seatgeek/jobs |
| sendbird | https://boards-api.greenhouse.io/v1/boards/sendbird/jobs |
| smartsheet | https://boards-api.greenhouse.io/v1/boards/smartsheet/jobs |
| snyk | https://api.ashbyhq.com/posting-api/job-board/snyk |
| sprig | https://api.ashbyhq.com/posting-api/job-board/sprig |
| svix | https://api.ashbyhq.com/posting-api/job-board/svix |
| temporal | https://boards-api.greenhouse.io/v1/boards/temporal/jobs |
| thumbtack | https://boards-api.greenhouse.io/v1/boards/thumbtack/jobs |
| toptal | https://api.lever.co/v0/postings/toptal |
| udemy | https://boards-api.greenhouse.io/v1/boards/udemy/jobs |
| webflow | https://boards-api.greenhouse.io/v1/boards/webflow/jobs |
| zscaler | https://boards-api.greenhouse.io/v1/boards/zscaler/jobs |
| abnormalsecurity | https://boards-api.greenhouse.io/v1/boards/abnormalsecurity/jobs |
| adyen | https://boards-api.greenhouse.io/v1/boards/adyen/jobs |
| alchemy | https://boards-api.greenhouse.io/v1/boards/alchemy/jobs |
| allbirds | https://boards-api.greenhouse.io/v1/boards/allbirds/jobs |
| appian | https://boards-api.greenhouse.io/v1/boards/appian/jobs |
| automox | https://boards-api.greenhouse.io/v1/boards/automox/jobs |
| benchling | https://api.ashbyhq.com/posting-api/job-board/benchling |
| block | https://boards-api.greenhouse.io/v1/boards/block/jobs |
| braze | https://boards-api.greenhouse.io/v1/boards/braze/jobs |
| builtin | https://boards-api.greenhouse.io/v1/boards/builtin/jobs |
| calm | https://boards-api.greenhouse.io/v1/boards/calm/jobs |
| carta | https://boards-api.greenhouse.io/v1/boards/carta/jobs |
| civicactions | https://boards-api.greenhouse.io/v1/boards/civicactions/jobs |
| classpass | https://boards-api.greenhouse.io/v1/boards/classpass/jobs |
| clickup | https://api.ashbyhq.com/posting-api/job-board/clickup |
| codepath | https://boards-api.greenhouse.io/v1/boards/codepath/jobs |
| contentstack | https://boards-api.greenhouse.io/v1/boards/contentstack/jobs |
| cortica | https://boards-api.greenhouse.io/v1/boards/cortica/jobs |
| coursera | https://boards-api.greenhouse.io/v1/boards/coursera/jobs |
| cursor | https://api.ashbyhq.com/posting-api/job-board/cursor |
| cybereason | https://boards-api.greenhouse.io/v1/boards/cybereason/jobs |
| dagger | https://boards-api.greenhouse.io/v1/boards/dagger/jobs |
| deepgram | https://api.ashbyhq.com/posting-api/job-board/deepgram |
| deepmind | https://boards-api.greenhouse.io/v1/boards/deepmind/jobs |
| descript | https://boards-api.greenhouse.io/v1/boards/descript/jobs |
| dialpad | https://boards-api.greenhouse.io/v1/boards/dialpad/jobs |
| digit | https://boards-api.greenhouse.io/v1/boards/digit/jobs |
| earnin | https://boards-api.greenhouse.io/v1/boards/earnin/jobs |
| ethos | https://boards-api.greenhouse.io/v1/boards/ethos/jobs |
| everlaw | https://boards-api.greenhouse.io/v1/boards/everlaw/jobs |
| everquote | https://boards-api.greenhouse.io/v1/boards/everquote/jobs |
| expel | https://boards-api.greenhouse.io/v1/boards/expel/jobs |
| fastly | https://boards-api.greenhouse.io/v1/boards/fastly/jobs |
| fellow | https://boards-api.greenhouse.io/v1/boards/fellow/jobs |
| figment | https://boards-api.greenhouse.io/v1/boards/figment/jobs |
| fireblocks | https://boards-api.greenhouse.io/v1/boards/fireblocks/jobs |
| five9 | https://boards-api.greenhouse.io/v1/boards/five9/jobs |
| flexe | https://boards-api.greenhouse.io/v1/boards/flexe/jobs |
| formlabs | https://boards-api.greenhouse.io/v1/boards/formlabs/jobs |
| fullstory | https://api.ashbyhq.com/posting-api/job-board/fullstory |
| godaddy | https://boards-api.greenhouse.io/v1/boards/godaddy/jobs |
| golinks | https://api.ashbyhq.com/posting-api/job-board/golinks |
| greptile | https://api.ashbyhq.com/posting-api/job-board/greptile |
| helloalice | https://boards-api.greenhouse.io/v1/boards/helloalice/jobs |
| hightouch | https://api.ashbyhq.com/posting-api/job-board/hightouch |
| honeybook | https://boards-api.greenhouse.io/v1/boards/honeybook/jobs |
| horizen | https://boards-api.greenhouse.io/v1/boards/horizen/jobs |
| ideo | https://boards-api.greenhouse.io/v1/boards/ideo/jobs |
| indeed | https://boards-api.greenhouse.io/v1/boards/indeed/jobs |
| instabase | https://boards-api.greenhouse.io/v1/boards/instabase/jobs |
| intercom | https://boards-api.greenhouse.io/v1/boards/intercom/jobs |
| iterable | https://boards-api.greenhouse.io/v1/boards/iterable/jobs |
| ivalua | https://boards-api.greenhouse.io/v1/boards/ivalua/jobs |
| justanswer | https://boards-api.greenhouse.io/v1/boards/justanswer/jobs |
| karat | https://boards-api.greenhouse.io/v1/boards/karat/jobs |
| keystone | https://boards-api.greenhouse.io/v1/boards/keystone/jobs |
| knowde | https://boards-api.greenhouse.io/v1/boards/knowde/jobs |
| kustomer | https://api.ashbyhq.com/posting-api/job-board/kustomer |
| legalist | https://boards-api.greenhouse.io/v1/boards/legalist/jobs |
| medium | https://boards-api.greenhouse.io/v1/boards/medium/jobs |
| newsela | https://boards-api.greenhouse.io/v1/boards/newsela/jobs |
| noredink | https://boards-api.greenhouse.io/v1/boards/noredink/jobs |
| nubank | https://boards-api.greenhouse.io/v1/boards/nubank/jobs |
| orca | https://boards-api.greenhouse.io/v1/boards/orca/jobs |
| osano | https://boards-api.greenhouse.io/v1/boards/osano/jobs |
| oso | https://api.ashbyhq.com/posting-api/job-board/oso |
| outschool | https://boards-api.greenhouse.io/v1/boards/outschool/jobs |
| papaya | https://boards-api.greenhouse.io/v1/boards/papaya/jobs |
| paragon | https://api.ashbyhq.com/posting-api/job-board/paragon |
| payoneer | https://boards-api.greenhouse.io/v1/boards/payoneer/jobs |
| pinecone | https://api.ashbyhq.com/posting-api/job-board/pinecone |
| podium | https://api.ashbyhq.com/posting-api/job-board/podium |
| primer | https://api.ashbyhq.com/posting-api/job-board/primer |
| proof | https://boards-api.greenhouse.io/v1/boards/proof/jobs |
| propel | https://boards-api.greenhouse.io/v1/boards/propel/jobs |
| proton | https://boards-api.greenhouse.io/v1/boards/proton/jobs |
| reka | https://api.ashbyhq.com/posting-api/job-board/reka |
| runway | https://api.ashbyhq.com/posting-api/job-board/runway |
| scaleai | https://boards-api.greenhouse.io/v1/boards/scaleai/jobs |
| sieve | https://api.ashbyhq.com/posting-api/job-board/sieve |
| singlestore | https://boards-api.greenhouse.io/v1/boards/singlestore/jobs |
| spire | https://boards-api.greenhouse.io/v1/boards/spire/jobs |
| stedi | https://api.ashbyhq.com/posting-api/job-board/stedi |
| stitch | https://boards-api.greenhouse.io/v1/boards/stitch/jobs |
| surveymonkey | https://boards-api.greenhouse.io/v1/boards/surveymonkey/jobs |
| taboola | https://boards-api.greenhouse.io/v1/boards/taboola/jobs |
| taskrabbit | https://boards-api.greenhouse.io/v1/boards/taskrabbit/jobs |
| tekion | https://boards-api.greenhouse.io/v1/boards/tekion/jobs |
| tigera | https://boards-api.greenhouse.io/v1/boards/tigera/jobs |
| tines | https://boards-api.greenhouse.io/v1/boards/tines/jobs |
| tldraw | https://api.ashbyhq.com/posting-api/job-board/tldraw |
| traeger | https://boards-api.greenhouse.io/v1/boards/traeger/jobs |
| transcarent | https://boards-api.greenhouse.io/v1/boards/transcarent/jobs |
| tripactions | https://boards-api.greenhouse.io/v1/boards/tripactions/jobs |
| truework | https://boards-api.greenhouse.io/v1/boards/truework/jobs |
| trustpilot | https://boards-api.greenhouse.io/v1/boards/trustpilot/jobs |
| upstart | https://boards-api.greenhouse.io/v1/boards/upstart/jobs |
| vanta | https://api.ashbyhq.com/posting-api/job-board/vanta |
| verkada | https://boards-api.greenhouse.io/v1/boards/verkada/jobs |
| verve | https://boards-api.greenhouse.io/v1/boards/verve/jobs |
| vidyard | https://boards-api.greenhouse.io/v1/boards/vidyard/jobs |
| vonage | https://boards-api.greenhouse.io/v1/boards/vonage/jobs |
| workato | https://boards-api.greenhouse.io/v1/boards/workato/jobs |
| workos | https://api.ashbyhq.com/posting-api/job-board/workos |
| wrike | https://boards-api.greenhouse.io/v1/boards/wrike/jobs |
| yext | https://boards-api.greenhouse.io/v1/boards/yext/jobs |
| yotpo | https://boards-api.greenhouse.io/v1/boards/yotpo/jobs |
| zocdoc | https://boards-api.greenhouse.io/v1/boards/zocdoc/jobs |
| anyscale | https://jobs.ashbyhq.com/anyscale |
| applovin | https://boards-api.greenhouse.io/v1/boards/applovin/jobs?content=true |
| calendly | https://boards-api.greenhouse.io/v1/boards/calendly/jobs?content=true |
| circleci | https://boards-api.greenhouse.io/v1/boards/circleci/jobs?content=true |
| dollarshaveclub | https://boards-api.greenhouse.io/v1/boards/dollarshaveclub/jobs?content=true |
| fetch | https://boards-api.greenhouse.io/v1/boards/fetch/jobs?content=true |
| labelbox | https://boards-api.greenhouse.io/v1/boards/labelbox/jobs?content=true |
| launchdarkly | https://boards-api.greenhouse.io/v1/boards/launchdarkly/jobs?content=true |
| liveperson | https://boards-api.greenhouse.io/v1/boards/liveperson/jobs?content=true |
| lucidmotors | https://boards-api.greenhouse.io/v1/boards/lucidmotors/jobs?content=true |
| moveworks | https://boards-api.greenhouse.io/v1/boards/moveworks/jobs?content=true |
| nuro | https://boards-api.greenhouse.io/v1/boards/nuro/jobs?content=true |
| palantir | https://api.lever.co/v0/postings/palantir |
| pendo | https://boards-api.greenhouse.io/v1/boards/pendo/jobs?content=true |
| perplexity | https://jobs.ashbyhq.com/perplexity |
| salesloft | https://boards-api.greenhouse.io/v1/boards/salesloft/jobs?content=true |
| sendcloud | https://jobs.sendcloud.com/vacancies |
| twilio | https://boards-api.greenhouse.io/v1/boards/twilio/jobs?content=true |
| veriff | https://boards-api.greenhouse.io/v1/boards/veriff/jobs?content=true |
| wave | https://boards-api.greenhouse.io/v1/boards/wavemm1/jobs?content=true |
| waymo | https://boards-api.greenhouse.io/v1/boards/waymo/jobs?content=true |
| creditgenie | https://api.ashbyhq.com/posting-api/job-board/creditgenie |
Add your company: https://github.com/jshchnz/claude-jobs
Instructions
User query: $ARGUMENTS
IMPORTANT: Do NOT use WebSearch. Only use WebFetch on the company endpoints from the table above.
For company-specific queries:
1. Find company in table above (case-insensitive) 2. If not found: list available companies, link to GitHub to add more 3. WebFetch the endpoint with prompt: "List all jobs with: Title, Location, Department, Salary (if available), and the unique Apply URL for each specific job posting (use absolute_url field for JSON APIs, or extract the individual job href link for HTML pages - each job should have its own unique URL)" 4. Display results grouped by department 5. Support filters: location, department, keywords (e.g., "engineering jobs in SF") 6. Always include an Apply hyperlink for each job using the absolute_url field 7. For "highest paying" queries, sort by salary (highest first) and show top results
For general queries (no specific company mentioned):
When user asks general questions like "what tech jobs are open" or "highest paying tech roles": 1. WebFetch from multiple company endpoints (prioritize 3-5 companies) 2. Compile results and display the most relevant jobs 3. For salary-focused queries, sort by salary across all companies and show top results 4. Always mention which company each job is from
Add Company to claude-jobs
Company Information
Company Name:
Company Identifier: (lowercase, used in queries)
Job API Endpoint:
ATS Platform: (Greenhouse / Lever / Ashby / Custom)
Checklist
- [ ] Endpoint is publicly accessible (tested with
curl) - [ ] Added row to Companies table in
SKILL.md - [ ] Company name is properly capitalized in identifier
Testing
curl https://your-endpoint-urlResult: (Describe what the endpoint returns)
# macOS
.DS_Store
.AppleDouble
.LSOverride
._*
# Editor files
.vscode/
.idea/
*.swp
*.swo
*~
.project
.settings/
# Logs
*.log
logs/
# Temporary files
tmp/
temp/
*.tmp
# Environment files
.env
.env.local
# Node modules (if any scripts are added)
node_modules/
# Python (if any scripts are added)
__pycache__/
*.py[cod]
*$py.class
.Python
venv/
.venv/
Contributing to claude-jobs
Add your company in 5 minutes!
How to add your company
1. Find your public job API endpoint
Your endpoint must be publicly accessible. JSON APIs are preferred, but HTML job board pages also work. Common patterns:
- Greenhouse:
https://boards-api.greenhouse.io/v1/boards/yourcompany/jobs - Lever:
https://api.lever.co/v0/postings/yourcompany - Ashby:
https://api.ashbyhq.com/posting-api/job-board/yourcompany - Ashby (HTML):
https://jobs.ashbyhq.com/yourcompany(if API doesn't return all jobs) - Custom:
https://yourcompany.com/api/jobsorhttps://yourcompany.com/jobs.json
2. Test your endpoint
curl https://your-endpoint-url3. Add your company to SKILL.md
Fork this repo and add a row to the Companies table in SKILL.md:
| yourcompany | https://your-endpoint-url |4. Submit a pull request
git checkout -b add-yourcompany
git commit -m "Add YourCompany job listings"
git push origin add-yourcompanyChecklist
- [ ] Endpoint is publicly accessible
- [ ] Added row to Companies table in
SKILL.md - [ ] Tested with
curl
Other contributions
- Report issues: Open an issue
- Improve the skill: PRs welcome for better filtering, formatting, or error handling
License
By contributing, you agree that your contributions will be licensed under the MIT License.
MIT License
Copyright (c) 2026 claude-jobs contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
claude-jobs
 
Find job openings at tech companies directly from Claude Code.
Install
git clone https://github.com/jshchnz/claude-jobs.git ~/.claude/skills/claude-jobsExamples
Basic queries
what jobs are open at sentry?
show me positions at stripe
careers at discordFilter by location
jobs in san francisco at airbnb
remote positions at gitlab
new york engineering jobs at datadogFilter by department
engineering jobs at cloudflare
design positions at figma
marketing roles at notionFilter by level
senior engineer jobs at stripe
staff positions at vercel
intern roles at coinbaseExample output
## Engineering
**Head of Security** - San Francisco, CA
- Department: Engineering
- Salary: $260,000–$350,000
- [Apply](https://jobs.ashbyhq.com/sentry/acad878a-0687-492f-9904-d1a4d0beccc4)
**Engineering Manager, Data Browsing** - Toronto, Canada
- Department: Engineering
- Salary: $232,000–$274,000
- [Apply](https://jobs.ashbyhq.com/sentry/2f48f301-c17e-4b07-931b-4574695b8188)Supported Companies
Abnormal Security, Adyen, Affirm, Airbnb, Airtable, Alchemy, Algolia, Allbirds, Amplitude, Anthropic, AnyScale, AppLovin, Appian, Asana, Ashby, Atlassian, Automox, Axiom, Benchling, Block, Braintrust, Braze, Brex, Built In, Calendly, Calm, Carta, Checkr, Chime, CircleCI, CivicActions, ClassPass, Clerk, ClickUp, Cloudflare, CockroachDB, CodePath, Cohere, Coinbase, Contentful, Contentstack, Cortica, Coursera, Cribl, Cursor, Cybereason, Dagger, Databricks, Datadog, Deel, DeepGram, DeepMind, Descript, Dialpad, Digit, Discord, Dollar Shave Club, Doximity, Drata, Dropbox, Duolingo, Earnin, Elastic, Ethos, Everlaw, EverQuote, Expel, Faire, Fastly, Fellow, Fetch, Figma, Figment, Fireblocks, Five9, Fivetran, Flexe, Flexport, Forethought, Formlabs, Freshpaint, FullStory, GitLab, GoDaddy, GoLinks, Grammarly, Greenhouse, Greptile, Groww, Gusto, Helion, HelloAlice, Hightouch, HoneyBook, Horizen, HubSpot, IDEO, Immutable, Indeed, Instabase, Instacart, Intercom, Iterable, Ivalua, Juicebox, JustAnswer, Justworks, Kalshi, Karat, Keystone, Klaviyo, Knowde, Kustomer, Labelbox, Latitude, Lattice, LaunchDarkly, Legalist, Linear, LivePerson, Lucid Motors, Lyft, Marqeta, Masterclass, Mattermost, Medium, Melio, Mercury, Mixpanel, MongoDB, Motion, Moveworks, Mutiny, Neon, Netlify, Newsela, Nextdoor, NoRedInk, Notion, Nubank, Nuro, Okta, One Medical, OpenAI, Opendoor, Orca, Osano, Oso, Outreach, Outschool, PagerDuty, Palantir, Papaya, Paragon, Payoneer, Peloton, Pendo, Perplexity, Pinecone, Pinterest, Plaid, Podium, PostHog, Postman, Primer, Proof, Propel, Proton, Pulley, Railway, Ramp, Reddit, Reka, Relativity, Render, Replit, Retool, RevenueCat, Ripple, Robinhood, Roblox, Runway, SalesLoft, Samsara, Scale AI, SeatGeek, Sendbird, Sentry, Sieve, SingleStore, Smartsheet, Snyk, SoFi, Spire, Spotify, Sprig, Squarespace, Stedi, Stitch, Stripe, Supabase, SurveyMonkey, Svix, Taboola, Tailscale, TaskRabbit, Tekion, Temporal, Thumbtack, Tigera, Tines, tldraw, Toast, Toptal, Traeger, Transcarent, TripActions, Truework, Trustpilot, Twilio, Twitch, Udemy, Upstart, Vanta, Vercel, Veriff, Verkada, Verve, Vidyard, Vonage, Waymo, Webflow, Wikimedia, WorkOS, Workato, Wrike, Yext, Yotpo, ZipRecruiter, ZocDoc, Zscaler
Want to add your company? See how
Contributing
See CONTRIBUTING.md
License
MIT
#!/bin/bash
# Test all claude-jobs endpoints (parsed dynamically from SKILL.md)
# Usage: ./test-endpoints.sh [--parallel N] [--remove-dead] [--update-readme]
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SKILL_FILE="$SCRIPT_DIR/SKILL.md"
PARALLEL=0
REMOVE_DEAD=false
UPDATE_README=false
while [[ $# -gt 0 ]]; do
case $1 in
--parallel)
PARALLEL="${2:-4}"
shift 2
;;
--remove-dead)
REMOVE_DEAD=true
shift
;;
--update-readme)
UPDATE_README=true
shift
;;
*)
echo "Unknown option: $1"
echo "Usage: $0 [--parallel N] [--remove-dead] [--update-readme]"
exit 1
;;
esac
done
if [[ ! -f "$SKILL_FILE" ]]; then
echo "ERROR: SKILL.md not found at $SKILL_FILE"
exit 1
fi
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
NC='\033[0m'
RESULTS_DIR=$(mktemp -d)
trap 'rm -rf "$RESULTS_DIR"' EXIT
touch "$RESULTS_DIR/passed" "$RESULTS_DIR/failed" "$RESULTS_DIR/job_counts"
test_endpoint() {
local company=$1
local url=$2
printf "Testing %-20s ... " "$company"
response=$(curl -s -w "\n%{http_code}" --max-time 30 "$url" 2>/dev/null) || {
echo -e "${RED}FAILED${NC} (connection error)"
echo "$company" >> "$RESULTS_DIR/failed"
return 0
}
http_code=$(echo "$response" | tail -n1)
body=$(echo "$response" | sed '$d')
if [ "$http_code" != "200" ]; then
echo -e "${RED}FAILED${NC} (HTTP $http_code)"
echo "$company" >> "$RESULTS_DIR/failed"
return 0
fi
if echo "$body" | grep -qiE '"(title|text|name|position|role)".*:.*"[^"]+"|"(location|office|city)".*:.*"[^"]+"'; then
job_count=$(echo "$body" | grep -oiE '"(title|text|name)"[[:space:]]*:[[:space:]]*"[^"]+"' | wc -l | tr -d ' ')
if [ "$job_count" -eq 0 ]; then
job_count="?"
fi
echo -e "${GREEN}OK${NC} (~$job_count jobs)"
echo "$company" >> "$RESULTS_DIR/passed"
echo "$company $job_count" >> "$RESULTS_DIR/job_counts"
elif echo "$body" | grep -qE '^\[.*\]$|"jobs"'; then
echo -e "${YELLOW}OK${NC} (structure unclear)"
echo "$company" >> "$RESULTS_DIR/passed"
echo "$company ?" >> "$RESULTS_DIR/job_counts"
elif echo "$body" | grep -qiE '<title>.*jobs|careers.*</title>|class=".*job|posting|position.*"'; then
echo -e "${GREEN}OK${NC} (HTML job board)"
echo "$company" >> "$RESULTS_DIR/passed"
echo "$company ?" >> "$RESULTS_DIR/job_counts"
else
echo -e "${RED}FAILED${NC} (invalid response)"
echo "$company" >> "$RESULTS_DIR/failed"
fi
return 0
}
# Parse companies from SKILL.md table (skip header and separator rows)
parse_companies() {
grep -E '^\|[^-]' "$SKILL_FILE" | grep -viE '^\| *company' | while IFS='|' read -r _ company url _; do
company=$(echo "$company" | xargs)
url=$(echo "$url" | xargs)
[[ -n "$company" && -n "$url" ]] && printf '%s\t%s\n' "$company" "$url"
done
}
export -f test_endpoint
export RESULTS_DIR RED GREEN YELLOW NC
echo "Testing claude-jobs endpoints (from SKILL.md)..."
echo ""
COMPANIES=$(parse_companies)
TOTAL=$(echo "$COMPANIES" | wc -l | tr -d ' ')
if [[ "$PARALLEL" -gt 0 ]]; then
echo "$COMPANIES" | tr '\t' '|' | xargs -P "$PARALLEL" -I {} bash -c '
company="${1%%|*}"
url="${1##*|}"
test_endpoint "$company" "$url"
' _ "{}"
else
while IFS=$'\t' read -r company url; do
test_endpoint "$company" "$url"
done <<< "$COMPANIES"
fi
echo ""
PASSED=$(wc -l < "$RESULTS_DIR/passed" | tr -d ' ')
FAILED=$(wc -l < "$RESULTS_DIR/failed" | tr -d ' ')
echo "Results: $PASSED passed, $FAILED failed (out of $TOTAL)"
if [[ "$FAILED" -gt 0 ]]; then
echo ""
echo "Dead endpoints:"
while read -r company; do
echo " - $company"
done < "$RESULTS_DIR/failed"
if [[ "$REMOVE_DEAD" == true ]]; then
echo ""
echo "Removing dead endpoints from SKILL.md..."
while read -r company; do
sed -i '' "/^| *${company} *|/d" "$SKILL_FILE"
echo " Removed: $company"
done < "$RESULTS_DIR/failed"
fi
fi
# Update README with company count and test date
if [[ "$UPDATE_README" == true ]]; then
README_FILE="$SCRIPT_DIR/README.md"
if [[ ! -f "$README_FILE" ]]; then
echo "WARNING: README.md not found, skipping update"
else
echo ""
echo "Updating README.md with test results..."
DATE=$(date +%Y-%m-%d)
# Build company list from job_counts (alphabetical, names only)
COMPANY_LIST=""
while IFS=$'\t' read -r company _; do
display_name="$(echo "$company" | awk '{print toupper(substr($0,1,1)) substr($0,2)}')"
COMPANY_LIST+="$display_name, "
done < <(sort -t$'\t' -k1,1 "$RESULTS_DIR/job_counts")
# Remove trailing ", "
COMPANY_LIST="${COMPANY_LIST%, }"
DATE=$(date +%Y-%m-%d)
# Write new section to temp file, then use python to do the replacement
NEW_SECTION_FILE="$RESULTS_DIR/new_section.txt"
cat > "$NEW_SECTION_FILE" <<SECTION_EOF
## Supported Companies
> **${PASSED} companies** tracked (last tested: ${DATE})
${COMPANY_LIST}
**Want to add your company?** [See how](CONTRIBUTING.md)
SECTION_EOF
python3 -c "
import re
with open('$NEW_SECTION_FILE') as f:
new_section = f.read().rstrip()
with open('$README_FILE') as f:
readme = f.read()
pattern = r'## Supported Companies.*?(?=\n## |\Z)'
updated = re.sub(pattern, new_section, readme, flags=re.DOTALL)
with open('$README_FILE', 'w') as f:
f.write(updated)
"
echo " README.md updated"
fi
fi
if [[ "$FAILED" -gt 0 ]]; then
exit 1
fi