Tech Jobs Search: AI Jobs, Startup & Remote Jobs, $1.15/1K
Pricing
from $1.00 / 1,000 matching jobs
Tech Jobs Search: AI Jobs, Startup & Remote Jobs, $1.15/1K
Search tech jobs, AI jobs, startup jobs and remote jobs at 824 companies, read live from their career pages, by title, place, seniority, salary and date. $1.15 per 1,000 matching jobs, no usage fees. Daily alerts send only new jobs to Slack or n8n. MCP-ready. No API key or login.
Pricing
from $1.00 / 1,000 matching jobs
Rating
0.0
(0)
Developer
Don Mangu
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
18 days ago
Last modified
Categories
Share
Tech Jobs Search: AI jobs, startup jobs and remote jobs
Tech Jobs Search searches tech jobs, AI jobs, startup jobs and remote jobs at 824 tech, AI, remote-first, European and startup companies, by title, location, remote work, visa sponsorship, seniority, job function, salary and posted date. Every result is a job that is open on the day you run it, read from the company's own career page. You pay $1.15 per 1,000 matching jobs, a company with no matching job costs nothing, and there is no API key or login.
Try it now. Click Try for free and create a free Apify account, no credit card needed. The form is filled in for engineer jobs posted in the last 7 days at the 179 AI companies, at most 3 per company and 100 in all, so the first run costs at most $0.12.
Who uses Tech Jobs Search
- Job seekers search 824 employers in one run for a title, a city or remote work, newest first, and apply on the company's own page.
- Job boards and newsletters fill an AI, startup or remote section with jobs that are open today.
- Recruiters see which companies opened roles this week for the function, level and city they hire for.
- Sales teams list companies that are hiring for a role, such as AI companies that posted account executive jobs in the last 30 days.
- AI agents call it as a tool through Apify's MCP server and get one JSON row per job.
The five company lists
| List | API value | Companies | Five of them |
|---|---|---|---|
| AI companies | ai-companies | 179 AI labs and AI-first companies | C3 AI, CoreWeave, Nebius, SoundHound, WeRide |
| Tech companies | tech-companies | 311 tech companies | Airbnb, Cloudflare, Datadog, Duolingo, Spotify |
| Remote-first companies | remote-first | 90 companies with at least 4 in 5 of their open jobs remote | Affirm, Coinbase, Dropbox, GitLab, Twilio |
| Tech companies hiring in Europe | europe-tech | 65 tech companies with at least 4 in 5 of their open jobs in Europe | Deezer, Funding Circle, Paradox Interactive, Tripadvisor, Trivago |
| Startups | startups | 250 venture-backed startups, none of them in the other lists | CodeRabbit, Firecrawl, incident.io, Mintlify, Secureframe |
The form starts with AI companies. Add lists for a wider search, or leave Company lists empty to search all five. 71 companies are in two lists and count once, so all five cover 824 companies. Every company had at least 10 open jobs when we checked its career page between September 24 and 26, 2026, and we refresh the lists once a month. Company names are trademarks of their owners, and this Actor is not affiliated with them.
How to search tech jobs, step by step
- Click Try for free, or Start if you are signed in to Apify.
- In Company lists, keep AI companies, add the lists you need, or clear it to search all five.
- In Title includes, type words such as data engineer or product manager.
- Add other filters from the table below, such as Location, Remote only or Posted since.
- Set Max matching jobs, which also caps the price.
- Click Start. When the run ends, open the Jobs view and export the rows as CSV, Excel or JSON.
- To repeat the search, click Save as a new task, add the task to a schedule under Schedules and click Enable. New schedules start disabled.
Five ready-made job searches
Paste one of these into the JSON tab of the input, or pick the same values in the form.
1. AI jobs: machine learning and AI engineer roles at AI companies, this week
{"companyLists": ["ai-companies"],"titleIncludes": ["machine learning", "AI engineer", "research engineer", "applied scientist"],"postedSince": "7 days","maxJobsPerCompany": 5,"maxResults": 200}
2. Remote jobs: remote engineering, product and design jobs open to Europe
{"companyLists": ["remote-first", "tech-companies"],"remoteOnly": true,"remoteRegions": ["europe"],"jobFunctions": ["engineering", "product", "design"],"postedSince": "14 days","maxResults": 200}
3. Startup jobs: new jobs at 250 venture-backed startups in New York and San Francisco
{"companyLists": ["startups"],"location": "New York\nSan Francisco","postedSince": "7 days","maxResults": 200}
4. Tech jobs near a city: engineering and data jobs within 30 km of London
{"companyLists": ["tech-companies", "startups", "europe-tech"],"near": "London","radiusKm": 30,"jobFunctions": ["engineering", "data"],"postedSince": "7 days","maxResults": 300}
5. Visa sponsorship jobs: data engineer jobs whose description says the company sponsors visas, all five lists
{"titleIncludes": ["data engineer", "analytics engineer"],"visaSponsorship": true,"postedSince": "30 days","maxResults": 100}
Each search costs at most its Max matching jobs times $0.00115, so $0.12 to $0.35 here, and less when fewer jobs match.
Filters
Filters on workplace, seniority, job type, salary and dates leave out jobs whose value is unknown.
| Field | API name | What it does |
|---|---|---|
| Company lists | companyLists | The lists to search. Empty means all five |
| Exclude companies | excludeCompanies | Companies of the lists to leave out, such as your current employer |
| Title includes | titleIncludes | Keeps jobs whose title has one of these words or phrases, as whole words |
| Title excludes | titleExcludes | Leaves out titles with any of these words, such as intern |
| Description includes | descriptionIncludes | Keeps jobs whose description names one of these words, such as Rust or Kubernetes |
| Location | location | A city, a US state or Canadian province, or a country name or code, one per line |
| Location excludes | locationExcludes | Leaves out jobs in these places |
| Near a city | near, radiusKm | Keeps jobs within a distance of one city, 50 km by default |
| Remote only | remoteOnly | Keeps only jobs that can be done fully remote |
| Remote regions | remoteRegions | Keeps remote jobs open to a region or country, such as us, europe or DE |
| Only jobs that sponsor visas | visaSponsorship | Keeps jobs whose description says the company sponsors visas |
| Only UK visa sponsors | ukVisaSponsorOnly | Keeps jobs at companies on the UK register of licensed visa sponsors |
| Workplace | workplaceTypes | Remote, hybrid or on-site |
| Seniority | seniorities | Levels from intern to C-level, read from the title |
| Job functions | jobFunctions | 18 functions, such as engineering, data, product and sales |
| Job type | employmentTypes | Full-time, part-time, contract, internship and 3 more |
| Department | department | Text in the department or team name, such as engineering |
| Only jobs with a salary | hasSalary | Keeps jobs that show pay |
| Minimum yearly salary | minAnnualSalary | Keeps jobs whose yearly pay reaches this amount |
| Minimum salary currency | minAnnualSalaryCurrency | The currency of that amount, USD by default |
| Posted since | postedSince | A date such as 2026-09-01, or a period such as 24 hours or 7 days |
| Posted before | postedBefore | A date or a period, for older jobs or a date range |
| Max jobs per company | maxJobsPerCompany | The most jobs from one company, newest first. The form starts at 3 |
| Max matching jobs | maxResults | The most jobs one run returns. The form starts at 100; in API input it is 200 when left out, and at most 10,000 |
Every search reads all the companies in the lists you pick. You receive the newest matching jobs first, from all of them, and jobs without a posted date come last.
What data you get
Each row is one job. The fields are the same as in ATS Jobs API, so a workflow built for one reads the other. The Output tab describes every field.
| Field | What it holds |
|---|---|
companyName | Company name |
title | Job title |
department, team | Department and team, as the company names them |
location | Location text, such as Seattle, WA |
city, region, countryCode | City, US state or Canadian province code, and country code such as DE |
workplaceType, remote | remote, hybrid or onsite, and true for fully remote jobs |
seniority | intern, entry, mid, senior, staff_principal, lead_manager, director, vp or c_level |
jobFunction | engineering, data, product, sales and 14 more |
employmentTypeNormalized | full_time, part_time, contract, temporary, internship, apprenticeship or volunteer |
salaryMin, salaryMax, salaryCurrency, salaryPeriod | Published pay, when the company shows it |
salaryAnnualMin, salaryAnnualMax | The same pay per year, for comparison |
postedAt | When the job was posted |
url, applyUrl | Links to the job posting and the application form |
jobKey | A key for the job that stays the same in every run |
ukVisaSponsor | true when the company is on the UK register of licensed visa sponsors |
description | The job description, with Description includes or Only jobs that sponsor visas |
visaSponsorship, visaSponsorshipText | Whether the description says the company sponsors visas, and the sentence it says so in |
company | The company's career page link |
The COMPANIES record on the Output tab gives each company's status, such as ok or no_matching_jobs.
Input example
This is the input the form is filled in with when you open the Actor, as JSON. Paste it into the JSON tab of the input, or send it as the run input through the API. Fields you leave out keep their defaults.
{"companyLists": ["ai-companies"],"titleIncludes": ["engineer"],"postedSince": "7 days","maxJobsPerCompany": 3,"maxResults": 100}
Output example
One row per job. The three rows below are cut down to values from the real run described in the next section: a job with a salary in US dollars, a job with a salary in Canadian dollars, and a job with no published salary. A real row has all the fields in the table above, and a field the company does not publish is null.
[{"rowType": "job","ats": "ashby","companyName": "Teleport","title": "Senior Data Engineer - US","location": "San Francisco Bay Area, CA","seniority": "senior","salaryMin": 222000,"salaryMax": 342000,"salaryCurrency": "USD"},{"rowType": "job","ats": "ashby","companyName": "Dandy","title": "Senior Data Engineer - Data Infra (Canada)","location": "Canada - Remote","seniority": "senior","salaryMin": 133600,"salaryMax": 167000,"salaryCurrency": "CAD"},{"rowType": "job","ats": "ashby","companyName": "Pika","title": "Data Engineer","location": "US remote","seniority": null,"salaryMin": null,"salaryMax": null,"salaryCurrency": null}]
The salary is in the currency the company used, so Dandy's range is in Canadian dollars. Open the Jobs view of a run to see every field.
What a real run returned
On 28 September 2026 I ran the Actor with the title filter "data engineer", remote jobs only, all five company lists and a limit of 10 jobs. It finished in 2 minutes 10 seconds. It searched 824 companies and found 44 matching jobs; the 10 newest came back, from 7 companies. The status message said: "Raise maxResults to receive more of the 44 matching jobs." Each company has its own status in the COMPANIES record: 795 had no matching job, 28 had at least one and 1 could not be found.
The first six of the ten rows:
| Company | Title | Location | Seniority | Salary (per year) | Source |
|---|---|---|---|---|---|
| Teleport | Senior Data Engineer - US | San Francisco Bay Area, CA | senior | 222,000 to 342,000 USD | Ashby |
| Dandy | Senior Data Engineer - Data Infra (Canada) | Canada - Remote | senior | 133,600 to 167,000 CAD | Ashby |
| Pika | Data Engineer | US remote | not given | not given | Ashby |
| Render | Senior/Staff Data Engineer | SF or Remote (US/Canada) | staff_principal | 195,000 to 268,000 USD | Ashby |
| Jobber | Staff Data Engineer | Remote | staff_principal | not given | Ashby |
| Hilbert's AI | Forward Deployed Data Engineer - LATAM | LATAM | not given | not given | Ashby |
The other four rows were the same title, "Data Engineer - Cloud & SaaS Integrations", at DoiT, posted for Remote EMEA twice, Remote Estonia and Remote Israel. They come from Greenhouse and carry no salary. Companies often post one role once per region, and the Actor returns each posting as its own row.
In these 10 rows, 3 had a salary range and 4 had a seniority level. The salary is returned in the currency the company used, so Dandy's range is in Canadian dollars. A field the company did not publish stays empty.
How much does it cost?
You pay per matching job you receive. There are no platform usage fees, and paid Apify plans pay less per job.
| Event | Free plan | Starter | Scale | Business |
|---|---|---|---|---|
Matching job (matching-job), per 1,000 jobs | $1.15 | $1.15 | $1.05 | $1.00 |
Run start (apify-actor-start), per run | $0.00005 | $0.00005 | $0.00005 | $0.00005 |
A worked example. A recruiter wants new AI engineer jobs in Europe every morning. She saves ready-made search 1 with Location set to Germany, France, United Kingdom and Netherlands, one per line, turns on Only new jobs since my last run and schedules it daily. Say the first run finds 180 matching jobs: 180 × $0.00115 = $0.21. On each of the next 29 days about 15 new jobs appear: 15 × $0.00115 = $0.017 a day, or $0.50 for the 29 days. The month costs about $0.71 plus 30 run starts ($0.0015), on the Free plan. The job counts here are an illustration; your search decides the real ones.
More examples, leaving out the $0.00005 start:
| Search | Free plan | Starter | Scale | Business |
|---|---|---|---|---|
| The prefilled search, up to 100 jobs | up to $0.12 | up to $0.12 | up to $0.11 | up to $0.10 |
| 1,000 jobs | $1.15 | $1.15 | $1.05 | $1.00 |
| 10,000 jobs, the most one run returns | $11.50 | $11.50 | $10.50 | $10.00 |
| A daily search of up to 100 jobs, for 30 days | up to $3.45 | up to $3.45 | up to $3.15 | up to $3.00 |
- A run that finds no job costs only the start.
- If your spending limit cannot cover every matching job, you get the newest jobs it covers and pay only for those.
- Apify's free plan includes $5 a month to spend in Apify Store, enough for about 4,300 matching jobs.
Daily alerts for new tech jobs
Turn on Only new jobs since my last run, save the search as a task and schedule it daily. The first run returns the jobs that match now and saves them in your Apify account. Each later run returns only matching jobs you have not received from that search, so you pay only for new jobs, and a quiet day costs only the $0.00005 start. Give each saved search its own Monitor name so their jobs do not mix.
For a message on days with new jobs, paste a Slack, Discord, Teams, Make, Zapier or n8n incoming webhook link into Alert webhook URL. The message is free and lists up to 10 new jobs with their links, or up to 50 with Jobs listed in an alert. The first run sends none unless you turn on Alert on the first run.
Integrations
Google Sheets. On your saved task's Integrations tab, add the Google Sheets Import & Export Actor, connect Google, pick a spreadsheet and set Mode to append. Each scheduled run adds its jobs as new rows.
n8n. Add a Schedule Trigger, then the Apify node with Actor tasks and Run Task and Get Dataset, and pick your saved task. The node waits for the run and passes on each job as one item.
Make. The Apify app runs your task with Run a Task, and Get Dataset Items reads its jobs. To react to scheduled runs, start with Watch Task Runs.
Zapier. The Apify app has a Finished task run trigger and a Run Task action. Add Fetch dataset items to pass the jobs to the next step.
Clay. Clay's Run Apify Actor enrichment can start Tech Jobs Search. For a sales list, set Max jobs per company to 1 so each hiring company appears once.
Webhooks. On a task's Integrations tab, add an HTTP webhook for Run succeeded. Apify then sends each run's details to your URL, including the defaultDatasetId that holds its jobs.
Jobs API: one request, one row per job
The API tab has ready code for JavaScript, Python and other clients. This request runs a search and returns the jobs as JSON.
curl -X POST "https://api.apify.com/v2/acts/conserving_celerytop~tech-jobs-search/run-sync-get-dataset-items" \-H "Authorization: Bearer <YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"companyLists": ["remote-first"], "titleIncludes": ["product manager"], "remoteOnly": true, "maxResults": 100}'
Use it from AI agents (MCP)
Tech Jobs Search is MCP-ready through Apify's hosted MCP server, so Claude, ChatGPT, Cursor, VS Code and other MCP clients can run a search as a tool. Add this server to your client:
{"mcpServers": {"apify": {"type": "http", "url": "https://mcp.apify.com/?tools=fetch-actor-details,conserving_celerytop/tech-jobs-search"}}}
In Claude.ai or Claude Desktop, add a custom connector with the same URL. On first use a browser window opens to sign in to Apify, so no token goes in the file. Clients without sign-in can send an Authorization: Bearer <YOUR_APIFY_TOKEN> header instead. Each search costs the same per matching job as a run.
Example prompt: "Find remote senior backend engineer jobs at AI companies posted in the last 7 days, with salary when published."
Example pages
Each page is a ready search with its input filled in.
- Tech jobs to Google Sheets every morning
- New data engineer jobs in an n8n workflow
- AI companies hiring account executives this month
- Jobs at remote-first companies in the last 24 hours
- AI engineer jobs in Europe posted this week
- Remote product manager jobs at tech companies
- Senior backend jobs with a salary over $150k
- Internships at AI companies
- Tech jobs in New York posted this week
- Founding engineer jobs at AI companies
FAQ
How is this different from a job board?
A job board shows the jobs that employers post on it. Tech Jobs Search reads the public career pages of 824 AI companies, startups, tech companies and remote-first companies when you run it, so every row is open that day and links to the company's own posting. It covers only those companies, at $1.15 per 1,000 matching jobs.
Tech Jobs Search compared with LinkedIn and Indeed job scrapers
Scrapers for LinkedIn Jobs and Indeed search a whole job board, with every industry and country in it. Tech Jobs Search is narrower on purpose.
| Tech Jobs Search | A LinkedIn or Indeed jobs scraper | |
|---|---|---|
| Where jobs come from | The public career pages of 824 AI, startup, tech and remote-first companies | Job board search results |
| Reposts and agency ads | None, each row is the employer's own posting | Mixed in with employer posts |
| Is the job still open | Read the day you run it | Depends on the board's listing |
| Login, cookies or proxies you set up | None | Varies by Actor |
| Companies covered | 824 | Any company on the board |
Pick Tech Jobs Search when you want AI, startup and remote tech jobs straight from the employer. Pick a board scraper when you need every company in every industry.
Can I use it as a LinkedIn Jobs or Indeed alternative?
For AI, startup and remote tech jobs, yes. It does not search LinkedIn or Indeed, and it needs no login or cookies. The table above shows where each fits.
Which companies does it search, and how many?
It searches 824 companies in five lists: 179 AI companies, 311 tech companies, 90 remote-first companies, 65 tech companies hiring in Europe and 250 venture-backed startups. 71 companies are in two lists and are read once. Every company had at least 10 open jobs when we checked it in September 2026, and we refresh the lists monthly.
How fresh are the jobs?
Each run reads every company's career page at that moment, so new jobs appear and closed jobs drop out, including jobs posted months ago that are still open. Results come newest first. Set Posted since to 24 hours on a daily schedule to get each day's new jobs.
How long does a search take?
Searching all five lists takes about three minutes, whatever the number of jobs you ask for. One list is faster.
Why is a job missing from my results?
The company may not be in the five lists. Title words match whole words, so engineer does not match Engineering Manager. Filters on workplace, seniority, job type, salary and dates leave out jobs whose value is unknown. Max jobs per company and Max matching jobs keep only the newest jobs, and the job may have closed since you saw it.
Can I search my own list of companies?
Not in this Actor, which searches its five lists only. To read every open job at the companies you name, use ATS Jobs API. It takes job board links, websites or company names and charges per company, including up to 1,000 of its jobs. Its Store page shows the current price.
What are the limits?
One run returns at most 10,000 jobs, newest first, and Title includes, Title excludes and Description includes take up to 100 words or phrases each. Rows have the job description only with Description includes or Only jobs that sponsor visas. At your spending limit, the run stops with the jobs you paid for.
Is it legal to collect these job postings?
Tech Jobs Search reads only job postings that companies publish on public career pages for applicants, with no login. It collects job data, not personal data, and removes email addresses and phone numbers from job descriptions. We cannot give legal advice, so check that your use follows the laws and terms that apply to you.
How do I get help or ask for a company?
Open an issue on the Issues tab with the link to your run, or with the name and career page of the company you want added. An employer that wants its jobs left out can ask there too. We add output fields, but we do not rename or remove them.
Related Actors
Closest to this one:
- AI Jobs Search: AI, machine learning and LLM jobs at 824 AI, tech and startup companies.
- Software Engineer Jobs: software engineer and developer jobs by level and stack.
- ATS Jobs API (career page scraper): open jobs of the companies you name, from Greenhouse, Lever, Ashby, Workday and 18 more job boards.
More Actors from the same developer:
Job data
- Live Jobs HTTP API: the same job data in one HTTP request, for Clay, Zapier, Make and n8n.
- Greenhouse Jobs Scraper: every open job on Greenhouse job boards.
- Lever Jobs Scraper: every open job on Lever job boards.
- Ashby Jobs Scraper: every open job on Ashby job boards, with published salaries.
- Workday Jobs Scraper: every open job on Workday career sites.
Company and salary research
- Company Hiring Signals: one hiring score per company from its open jobs.
- H-1B Salary Database: what employers pay, from H-1B and PERM filings.
- Website Tech Stack Detector: the CMS, ecommerce, analytics and hosting behind websites.
Content, media and research
- Audio and Podcast Transcription: audio, video and podcast feeds to text and subtitles.
- Crossref Works Search: scholarly papers, DOIs and citation counts.