Tech Stack Hiring Signals for B2B Sales
Pricing
Pay per usage
Tech Stack Hiring Signals for B2B Sales
Scan public Greenhouse and Lever job boards for 60+ curated tech companies. Detect Salesforce, Kubernetes, Snowflake, AWS and other hiring signals for B2B intent workflows.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
S. Klein
Maintained by CommunityActor stats
1
Bookmarked
3
Total users
0
Monthly active users
20 hours ago
Last modified
Categories
Share
Find companies that are currently hiring for a technology and use those job postings as a practical B2B buying-intent signal.
This Actor scans public Greenhouse and Lever job boards for a curated directory of 60+ technology companies. It detects technology keywords in current open roles, returns a company-level signal score, and saves stable IDs, hashes, source URLs, and a run summary for monitoring workflows.
It is not a general-purpose job board scraper. Use it when you want ranked company signals for sales, consulting, recruiting intelligence, market research, or account monitoring.
What You Get
- Company-level hiring signal rows, not thousands of raw job rows
- Scores from 0 to 100 based on relevant role count and share of open roles
- Detected technologies such as Salesforce, Kubernetes, Snowflake, AWS, dbt, Terraform, React, Python, and more
- Source links to the public Greenhouse or Lever board for manual verification
- Stable
signalIdandrecordHashfields for scheduled monitoring - A
RUN_SUMMARYdataset row and Key-Value Store record with status, warnings, and source counts - Fast default run suitable for Apify Store automated tests
Who Uses It
- SDR and RevOps teams looking for accounts that are actively expanding a stack
- Consulting firms tracking Salesforce, SAP, cloud, data, or DevOps expansion signals
- Recruiters and staffing teams mapping active hiring demand by technology
- VC, PE, and market analysts watching portfolio or competitor hiring patterns
- Automation users who want a small, stable dataset for CRM enrichment, Clay, Make, Zapier, n8n, or webhooks
Input
Default quick run
The default input runs in fast test mode against a small stable US subset and returns the top company-level hiring signals.
{"mode": "list_top_signals","region": "us","maxResults": 5,"testMode": true,"maxCompanies": 5,"concurrency": 3,"maxRetries": 2,"requestTimeoutSecs": 15}
Find companies hiring for Kubernetes
{"mode": "search_by_technology","technology": "Kubernetes","region": "us","maxResults": 10,"minSignalScore": 20,"testMode": false,"maxCompanies": 50}
Inspect one company
{"mode": "get_company_signals","companyName": "stripe","testMode": false}
Output
Each hiring signal row represents one company.
{"recordType": "HIRING_SIGNAL","signalId": "search_by_technology:greenhouse:stripe:kubernetes","recordHash": "7ed2...","scrapedAt": "2026-07-03T12:00:00.000Z","runMode": "search_by_technology","targetTechnology": "Kubernetes","companyName": "Stripe","companySlug": "stripe","region": "us","hiringSignalScore": 74,"technologyMatches": ["AWS", "Go", "Kubernetes", "Python", "Terraform"],"openRoleCount": 89,"relevantRoleCount": 7,"sampleJobTitles": ["Staff Infrastructure Engineer, Kubernetes Platform"],"atsSource": "greenhouse","companyUrl": "https://stripe.com","sourceUrls": ["https://boards.greenhouse.io/stripe"],"sourceFetchStatus": "ok","sourceAttemptCount": 1,"dataQualityWarnings": []}
Every run also writes a summary row to the dataset and to Key-Value Store key RUN_SUMMARY.
{"recordType": "RUN_SUMMARY","status": "SUCCEEDED","mode": "list_top_signals","region": "us","testMode": true,"companiesProcessed": 5,"sourceSuccessCount": 5,"sourceFailureCount": 0,"recordsReturned": 5,"warnings": [],"errors": []}
Possible summary statuses:
SUCCEEDED: valid source data was fetched and signal rows were returnedNO_RESULTS: valid source data was fetched, but no rows matched your filtersPARTIAL_SOURCE_FAILURE: some sources failed temporarily, but at least one valid source returned dataFAILED: input was invalid or all source requests failed, so no valid data could be verified
How the Score Works
For technology searches, the score combines:
- Ratio signal: the share of open roles matching the target technology
- Absolute signal: the number of matching open roles
For top-signal runs without a target technology, the score is based on current open-role volume and is best used as a hiring velocity indicator, not proof of adoption of a specific technology.
Data Sources
The Actor uses public ATS endpoints and public job board pages:
- Greenhouse boards
- Lever postings
No login, cookies, residential proxy, or browser rendering is required.
Limits
- Coverage is a curated directory of 60+ companies, not the whole job market.
- It currently supports Greenhouse and Lever only.
- It returns company-level signals, not full job descriptions or salary data.
- Technology detection is deterministic keyword matching, so it can miss synonyms or infer weak signals from broad terms.
- Open roles change frequently. Schedule daily or weekly runs if you need monitoring.
Recommended Workflows
Weekly CRM enrichment
- Run
search_by_technologyfor your target stack. - Export CSV.
- Match by
companySlugor company domain in your CRM. - Use
hiringSignalScore,relevantRoleCount, andsampleJobTitlesfor prioritization.
Monitoring changes
- Create an Apify task with your target technology.
- Schedule it daily or weekly.
- Compare
signalIdandrecordHashbetween runs. - Trigger a webhook when a new company appears or a hash changes.
n8n, Make, Zapier, or Clay
Use the default dataset endpoint from a finished run and filter rows where recordType is HIRING_SIGNAL. Use the Key-Value Store RUN_SUMMARY record for health checks before importing results.
Troubleshooting
The run returned NO_RESULTS
The sources responded correctly, but no company matched your technology or score filters. Lower minSignalScore, increase maxCompanies, or turn testMode off.
The run returned PARTIAL_SOURCE_FAILURE
Some public ATS boards were temporarily unavailable, rate-limited, or changed their response. The dataset still contains valid rows from sources that responded. Check warnings in RUN_SUMMARY.
The run failed
The Actor fails intentionally when input is invalid or all sources fail. This prevents false positive monitoring runs.
Why Use This Instead of a General Job Scraper?
General job scrapers are better when you need every job posting. This Actor is better when you need a compact account-level buying signal with a score, stable IDs, hashes, and source transparency. It is designed for recurring GTM and market-monitoring workflows where a small, explainable dataset is more useful than a large raw job feed.