A company's own careers page is the source of its job postings, and that page usually runs on a hiring platform such as Greenhouse, Lever, Ashby or Workday. Job boards copy the posting from there, and a copy can stay up after the original has closed.

So the freshest place to look for a job is the company career pages themselves. The trouble is that there are thousands of them, and no single search box covers them all.

This post shows two ways to search Greenhouse, Lever and Ashby jobs in one place:

  1. With Google and the site: operator, which is free and takes some work.
  2. With JobBloom, an AI job search engine I built to do the same thing in one sentence.

Method 1: Google with the site: operator

Each hiring platform hosts its customers' job pages on one domain. If you limit a Google search to that domain, you search every company on the platform at once.

Platform Domain to search
Greenhouse boards.greenhouse.io, job-boards.greenhouse.io
Lever jobs.lever.co
Ashby jobs.ashbyhq.com
Workable apply.workable.com
SmartRecruiters jobs.smartrecruiters.com

A search for remote backend jobs on the first three looks like this:

(site:boards.greenhouse.io OR site:job-boards.greenhouse.io OR site:jobs.lever.co OR site:jobs.ashbyhq.com) "backend engineer" (TypeScript OR "Node.js") remote 

This works, and it's worth knowing. It also has four problems:

  • Many results are closed. Google keeps a page in its index after the job is taken down. You only find out when you click.
  • "Remote" is just a word. A posting that says "this role is not remote" matches the search as well as a remote job does.
  • There is no ranking by fit. You get pages that contain your words, in Google's order, and you read each one to see if it suits you.
  • The query gets long. Every platform you add is another site: clause, and Google limits a search to 32 words.

Method 2: describe the job in one sentence

JobBloom runs the same kind of search for you. You describe the job in plain English, and it searches company career pages on 33 hiring platforms. It's free and needs no sign-up.

The JobBloom home page with the search "Remote backend engineer jobs, TypeScript or Node.js" typed in

I typed "Remote backend engineer jobs, TypeScript or Node.js" on 15 November 2026. This is what came back:

JobBloom results for "Remote backend engineer jobs, TypeScript or Node.js", with a 95% match for a Senior Backend Engineer role at Nuitée

The search returned six open jobs. The top three were a Senior Backend Engineer (Node.js) role at Nuitée with a 95% match, a Senior Backend Engineer role at Ora So with 92%, and a TypeScript role at Databento with 88%. Each result has a short summary, skill tags, the location, and the hiring platform the posting came from. "View role" opens the original posting on the company's own page.

You can also choose which platforms to search. All 33 are on by default:

The JobBloom job board picker with Greenhouse, Lever, SmartRecruiters, Workday and other hiring platforms ticked

How the search works

The pipeline has five steps. The loading screen groups them into three stages and updates as they run:

The JobBloom loading screen showing the steps "Understanding your search", "Scanning approved job hosts" and "Saving your results"

1. Understand the sentence

An LLM reads the prompt and pulls out the hard requirements: the role, the location, whether the job is remote, hybrid or on-site, the job type, and the must-have skills. It then writes a short search query. You can see that query on the results page, next to "Searched for".

2. Search career pages only

The query goes to a web search API, limited to the domains of the supported hiring platforms. This is the site: trick from method 1, applied to 33 platforms at once. Each platform is a small config entry:

export const approvedJobHostFamilies = [ { provider: 'greenhouse', queryHost: 'boards.greenhouse.io', hosts: [ 'boards.greenhouse.io', 'job-boards.greenhouse.io', 'job-boards.eu.greenhouse.io', 'boards.eu.greenhouse.io', ], }, { provider: 'lever', queryHost: 'jobs.lever.co', hosts: ['jobs.lever.co', 'jobs.eu.lever.co'], }, // ...31 more ] 

Because the search is limited to these domains, job boards and reposts never enter the results.

3. Rank cheaply before any AI reads a page

LLM calls are the expensive part of a search, so results first get a ranking from free signals: title match, location and age. Only the most promising ones go on to the next step. Each search has a fixed budget of 12 jobs to read, and up to 8 more only when fewer than 5 good matches come back.

4. Check that each job is still open

This step fixes the biggest problem with the Google method. Before a job is shown, JobBloom fetches the posting and checks it with plain HTTP, with no LLM involved:

// Simplified from the real check. // The posting's own closing date has passed. if (validThrough < Date.now()) return 'unavailable' // The job URL now redirects to the company's job list. if (isDeadLinkRedirect(requestedUrl, finalUrl)) return 'unavailable' // The page says the job is closed. if (hasUnavailableMarker(pageText, hostname)) return 'unavailable' 

The check matters more than I expected. In October I rechecked 1,522 job postings that JobBloom users had found, and of the 1,326 I could check, 888 (67%) no longer led to an open job. Most of them didn't say "closed". They returned an error or quietly redirected to the careers homepage.

If a site is slow or blocks the check, the result is "unknown", and the job stays in the list. A job is only hidden when the check is sure it's closed.

5. Read, score and filter

The jobs that pass are read in full to extract the title, company, location, skills and a match score. The requirements from step 1 are then applied as rules. If you asked for remote, an on-site job is dropped even when every keyword matches. Close matches are shown separately as related roles.

Which method should you use?

Google site: search JobBloom
Cost Free Free, no sign-up
Platforms per search As many as fit in 32 words 33
Closed jobs removed No Yes
Understands "remote" or "hybrid" No, it matches the word Yes, as a rule
Ranked by fit No Yes, with a match score
Full control over the query Yes Partly: you can edit the prompt and choose platforms

Use the Google method when you want exact control, for example to search one platform for an unusual phrase. Use JobBloom when you want a short list of open jobs that fit what you described.

Try it

Describe the job you want at jobbloom.co and see what comes back. If the results miss a hiring platform you rely on, tell me in the comments which one.