Hacker News Who Is Hiring Jobs, Every Month avatar

Hacker News Who Is Hiring Jobs, Every Month

Pricing

$4.00 / 1,000 result rows

Go to Apify Store
Hacker News Who Is Hiring Jobs, Every Month

Hacker News Who Is Hiring Jobs, Every Month

Startup jobs from each Hacker News who is hiring thread: company, role, location, remote, salary text, and apply link, one row per top-level post. Failed lookups are not dataset rows. Phrases: startup jobs, hacker news jobs, who is hiring.

Pricing

$4.00 / 1,000 result rows

Rating

0.0

(0)

Developer

US Tech Automations

US Tech Automations

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

This tool lists startup jobs from the Hacker News who is hiring thread, for people searching hacker news jobs.

Each month, Hacker News posts one "Ask HN: Who is hiring?" thread. The posts are free-text comments. This tool reads the official public item API and returns one row per top-level post: company, role, location, remote, salary text, and an apply link.

Input

FieldWhat it does
Recent monthly threadsHow many of the newest Who is hiring threads to read. Default 1, maximum 36. "Who wants to be hired?" and freelancer threads are skipped.
Thread idsOptional. One Hacker News story id per line. When this list is not empty, those threads are read and the month count is not used to search.
Keyword filterOptional. Keeps a post only when this text appears in the post, the company, the role, or the location. Matching ignores letter case.
Maximum rowsHard ceiling on job rows, and therefore on the cost of the run. Default 100, maximum 2000.
Proxy configurationOptional Apify proxy. Off by default, including on a local run.

Pricing

Pay per result. $0.004 per successful job row. No start fee.

Every row in the results is one charged result. Failed inputs are not rows; they are listed in the run log and the RUN_SUMMARY record, and cost nothing.

Maximum rows is the ceiling on how many job rows a run can return.

Output (one row per top-level post)

One example row from a real local run on 2026-09-22. Input: 1 month, no keyword, maximum 3 rows. The run returned 3 rows. This is the first. The post text is shortened here. That run's row also had an error flag set to false. Result rows no longer include that flag, so it is left out below. The other fields are the ones from that run.

{
"thread_month": "September 2026",
"post_id": 49523712,
"post_url": "https://news.ycombinator.com/item?id=49523712",
"posted_at": "2026-09-01T15:53:18Z",
"company": "QUOBYTE",
"role": "Berlin, Germany",
"location": "Full-time",
"remote": false,
"salary_text": "60-100k EUR; 50-90k",
"apply_url": "https://www.quobyte.com/",
"full_text": "QUOBYTE | Berlin, Germany | Full-time | ONSITE (Germany) | https://www.quobyte.com/\nAt Quobyte we are working on a highly scalable and fault-tolerant software storage system built around a parallel file system core. Our customers use us for large scale AI and HPC clusters in the ...",
"fetched_at": "2026-09-22T19:23:33Z"
}

That role is "Berlin, Germany" because the post's first bar-separated line is company, then city, then "Full-time". The tool does not move those fields into a different order.

FieldWhat it holds
thread_monthThe month written in the thread title, such as September 2026. Null if the title has no month in parentheses.
post_idThe comment's numeric id
post_urlhttps://news.ycombinator.com/item?id= plus that id. The HTML page is not downloaded.
posted_atComment time in UTC
companyText before the first vertical bar on the first bar-separated line. Null if that line is missing.
roleThe second slot on that line. Null if there is no second slot.
locationThe third slot on that line. Null if there is no third slot.
remoteTrue, false, or null. True only when that same line says remote and does not also say onsite. False when it says onsite (or no remote) and does not also say remote. Null when it says both, or neither.
salary_textA later slot on that line that states pay, or a pay phrase in the post such as 60-100k EUR. Null when no pay phrase was found.
apply_urlThe first http or https link that is not on news.ycombinator.com. Null if there is none.
full_textThe comment with HTML tags removed. Email addresses and phone numbers are replaced with [contact removed].

A thread that was missing, blocked, rate-limited, or not a Who is hiring thread is not in this table. The run log and the RUN_SUMMARY record list that input and the reason. The dataset has no failure rows.

The poster's username is not a column.

What this does not do

  • It does not read "Who wants to be hired?" or freelancer threads.
  • It does not read replies under a job post. Only top-level posts.
  • It does not guess a company, role, or location when the first bar-separated line is missing or short. Those fields stay null.
  • It does not rearrange slots. If a company puts the city in the role slot, the city stays in role.
  • It does not choose the "best" apply link. You get the first link that is not a Hacker News link. A homepage that appears before a careers link wins.
  • It does not log in, use cookies, or solve a CAPTCHA.
  • It does not open news.ycombinator.com HTML.
  • It does not output email addresses, phone numbers, or a username column.
  • It does not grant a licence to republish the posts. The text belongs to the people who wrote it.

Limits

  • months is 1–36 (default 1). maxItems is 1–2000 (default 100).
  • At most 36 thread ids.
  • Deleted and dead posts are skipped, not turned into rows.
  • A keyword that matches nothing returns no rows. That is not an error, and it does not invent posts.
  • The official item API says there is currently no rate limit. This tool still waits briefly between requests. One local run's timing is in the local-run note. That timing is not a speed promise.
  • A blocked, missing, or refused thread is not a result row. Other threads in the same run still run. The failure is in the run log and the RUN_SUMMARY record.

Refunds and support

Refunds: if a run returns zero rows for a valid input, email operations@ustechautomations.com within 7 days and we refund that run. Support: same address, replies within 2 business days.