Skip to main content
skill CX Codex

tracking-hiring-signals-from-company-tweets — Claude Code skill

Pulls hiring signals out of company tweets through apidojo's Apify scraper: who is recruiting, for which team, and how recently.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add apidojo-io/apidojo-skills --skill tracking-hiring-signals-from-company-tweets -a claude-code
Open on GitHub

What tracking-hiring-signals-from-company-tweets does

The skill searches Twitter for job announcements posted by companies and turns them into a report. You feed it search queries such as "we're hiring fintech" or "software engineer hiring", along with filters for dates, language, minimum retweets and likes, a specific author handle, or a location. Each row in the output carries the company handle, the role, the team signal, the post date and a growth score.

The workflow has five steps: search, optional scraping of named accounts, role and team extraction from the tweet text, scoring, then the report. The score weighs whether the account is a confirmed company, how specific the role is, how fresh the post is, and whether a job link is attached. Several posts inside 30 days mark high growth; one or two mean steady hiring.

Set APIFY_TOKEN in your environment or a .env file. Runs go through scripts/run_actor.js against the apidojo~tweet-scraper actor, and output can be written to CSV or JSON. Without the token the script has nothing to authenticate with. Expect job boards and staffing agencies in the results too, so the skill suggests adding -jobs -jobboard -staffing -recruiting to your query.

What it helps with

  • find companies hiring right now in a given sector
  • extract the role and team from a hiring tweet
  • filter out job boards and staffing agencies
  • build a list of companies hiring for your stack
  • gauge whether a competitor is expanding by post frequency

Example prompts for the agent

  • Find companies on Twitter hiring backend engineers in fintech and build a table
  • Run a search through apidojo~tweet-scraper for "we're hiring SaaS" and save the output as CSV
  • Check these companies' tweets from the last 30 days and score the hiring signal

How to install tracking-hiring-signals-from-company-tweets

1Skills CLI (Vercel)

npx skills add apidojo-io/apidojo-skills --skill tracking-hiring-signals-from-company-tweets -a claude-code

2Manually: put the files in place

~/.claude/skills/tracking-hiring-signals-from-company-tweets/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/tracking-hiring-signals-from-company-tweets/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about tracking-hiring-signals-from-company-tweets

How do I install tracking-hiring-signals-from-company-tweets in Claude Code?

Run npx skills add apidojo-io/apidojo-skills --skill tracking-hiring-signals-from-company-tweets -a claude-code. The skill lands at ~/.claude/skills/tracking-hiring-signals-from-company-tweets/SKILL.md.

What does tracking-hiring-signals-from-company-tweets do?

It searches company tweets for hiring posts, extracts the role and team, and scores the growth signal. The result is a report with handles, roles, dates and job links.

What do I need before running it?

An APIFY_TOKEN environment variable or one in a .env file. An Apify MCP server is optional and lets you call the apify:run-actor tool instead.

Source text

SKILL.md · Apache-2.0
---
name: tracking-hiring-signals-from-company-tweets
description: >
  Tracks hiring signals and growth indicators from company Twitter accounts using apidojo's Tweet
  scraper on Apify. Triggers when the user asks to: find companies that are actively hiring on
  Twitter, track job posting announcements from company accounts on X, identify startups that are
  growing based on their hiring tweets, find companies hiring for specific roles from their Twitter,
  monitor competitor hiring activity on social media, discover which companies are expanding teams
  in a specific sector, or build a list of companies actively hiring for your skill set.
  Returns company handle, role being hired, team/department signal, post date, and growth indicator.
  Ideal for job seekers, talent intelligence teams, VCs tracking portfolio growth, and competitor analysts.
license: Apache-2.0
metadata:
  author: apidojo
  version: "1.0"
  apify-actor: apidojo/tweet-scraper
---

# Tracking Hiring Signals from Company Tweets

Monitors company Twitter accounts for hiring announcements and growth signals. Companies tweet about openings before jobs.page or LinkedIn posts go live — Twitter is an early signal channel.

## Prerequisites

- `APIFY_TOKEN` environment variable set
- Optional: Apify MCP server installed

## Inputs

| Parameter | Type | Required | Default | Notes |
|-----------|------|----------|---------|-------|
| `searchTerms` | array | ✅ | `[]` | Twitter advanced search queries (e.g. `["#AI lang:en", "from:NASA"]`) |
| `sort` | string | Optional | `Top` | Sort order: `Latest`, `Top`, or `Latest+Top` |
| `tweetLanguage` | string | Optional | — | ISO 639-1 language code (e.g. `en`) |
| `maxItems` | number | Optional | Unlimited | Maximum tweets to return |
| `onlyVerifiedUsers` | boolean | Optional | `false` | Only tweets from verified users |
| `onlyTwitterBlue` | boolean | Optional | `false` | Only Twitter Blue subscribers |
| `onlyImage` | boolean | Optional | `false` | Only tweets with images |
| `onlyVideo` | boolean | Optional | `false` | Only tweets with videos |
| `onlyQuote` | boolean | Optional | `false` | Only quote tweets |
| `author` | string | Optional | — | Filter to a specific author handle |
| `inReplyTo` | string | Optional | — | Tweets replying to a specific handle |
| `mentioning` | string | Optional | — | Tweets mentioning a specific handle |
| `geotaggedNear` | string | Optional | — | Tweets near a location |
| `withinRadius` | string | Optional | — | Radius around geotaggedNear |
| `geocode` | string | Optional | — | Lat/lng + radius string |
| `placeObjectId` | string | Optional | — | Tweets tagged with a place |
| `minimumRetweets` | number | Optional | — | Minimum retweet count |
| `minimumFavorites` | number | Optional | — | Minimum like count |
| `minimumReplies` | number | Optional | — | Minimum reply count |
| `start` | string | Optional | — | Tweets after this date (YYYY-MM-DD) |
| `end` | string | Optional | — | Tweets before this date (YYYY-MM-DD) |
| `includeSearchTerms` | boolean | Optional | `false` | Add the matched search term to each tweet |
| `customMapFunction` | string | Optional | — | JavaScript function to transform each output object |

## Workflow

```
Progress:
- [ ] Step 1: Search for hiring-signal tweets in sector
- [ ] Step 2: (Optional) Scrape specific company accounts
- [ ] Step 3: Extract role and team info from tweet text
- [ ] Step 4: Score growth signal strength
- [ ] Step 5: Deliver hiring intelligence report
```

### Step 1: Search Hiring Signals


**Recommended — run_actor.js (handles waiting, output, and file saving automatically):**
```bash
# Quick answer (prints table to chat)
node scripts/run_actor.js \
  --actor "apidojo~tweet-scraper" \
  --input '{"param": "value"}'

# Save as CSV
node scripts/run_actor.js \
  --actor "apidojo~tweet-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.csv --format csv

# Save as JSON
node scripts/run_actor.js \
  --actor "apidojo~tweet-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.json --format json
```
> `APIFY_TOKEN` must be set in environment or `.env` file.

**If Apify MCP is available:**
```
Tool: apify:run-actor
Actor: "apidojo~tweet-scraper"
Input:
{
  "searchTerms": ["we're hiring [SECTOR]", "join our team [SECTOR]", "[ROLE] hiring [SECTOR]"],
  "maxItems": 300
}
```

**REST API fallback:**
```bash
curl -X POST   "https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN"   -H "Content-Type: application/json"   -d '{
    "searchTerms": ["we are hiring fintech", "join our team SaaS startup", "software engineer hiring"],
    "maxItems": 300
  }'
```

### Step 2: Extract Role Signals from Tweet Text

```
role_mentioned = extract noun phrases after "hiring a/an", "looking for a/an", "seeking a"
team_mentioned = extract from: "engineering team", "sales team", "marketing", "product team"
urgency = "immediately", "ASAP", "urgent" → HIGH; "growing team" → MEDIUM; general → LOW
```

### Step 3: Growth Signal Score

```
hiring_signal_score = (is_confirmed_company_account ? 1 : 0.5) * 0.30
                    + (role_is_specific ? 1 : 0.5) * 0.25
                    + (post_is_recent: ≤7 days = 1, 8-14 = 0.7, 15-30 = 0.4) * 0.25
                    + (link_to_job_page ? 1 : 0) * 0.20
```

**Growth tier:** Multiple hiring tweets in 30 days = HIGH_GROWTH; 1-2 = STEADY_HIRE; no link = SIGNAL_ONLY

### Step 4: Edge Cases

- **Retweets from employee accounts**: If a company employee retweets a job post, keep — it's still a valid signal; note it's not the company's official account
- **Job boards posting on behalf of company**: Filter out accounts named "JobsAt[Company]", staffing agencies, or accounts posting > 10 hiring tweets/day (aggregators)
- **Role extraction fails**: Note the tweet verbatim and mark `role = "unspecified"` — still a growth signal
- **Same company posts 5 roles**: Deduplicate by `author.username`; count unique companies, not unique tweets

## Output Format

```
# Hiring Signal Intelligence: [SECTOR/ROLE]
Tweets analyzed: [N] | Companies with hiring signals: [N] | Date: [DATE]

## High-Growth Companies (Multiple Roles Posted)
| Company | @Handle | Roles Mentioned | Teams | Posts | Link to Jobs | Score |
|---------|---------|----------------|-------|-------|-------------|-------|
| [name] | @[handle] | [role list] | [eng/mktg] | [N] | [Yes/No] | [0.XX] |

## Single Hire Signals
| Company | @Handle | Role | Team | Tweet Date | Job Link |
|---------|---------|------|------|-----------|---------|

## Role Distribution Across All Companies
| Role Category | # Companies Hiring | Urgency |
|--------------|-------------------|---------|
| Engineering | [N] | [High/Med] |
| Marketing | [N] | |
| Sales | [N] | |
```

## Troubleshooting

**Results dominated by job boards**: Add negative terms to search: `-jobs -jobboard -staffing -recruiting`
**Sector too broad**: Narrow with a sub-sector or specific stage: "Series A fintech" instead of "fintech".
**Job links are broken/expired**: Hiring tweets are posted in real-time; check within 48h for best link validity.

© apidojo · Apache-2.0 · apidojo-io/apidojo-skills

Similar skills

All skills for Browser and scraping →

From the same set57

scraping-tiktok-posts-by-location Collects TikTok posts tied to a place through Apify. Use it to export post metrics, creator details, hashtags, and upload times from a location page. CX Codex +1 765installs finding-speaking-opportunities-on-twitter A skill that searches Twitter for conferences, podcasts, and summits actively recruiting speakers. CX Codex +1 763installs tracking-google-serp-rankings A skill that pulls Google results for a keyword list: positions, URLs, titles, snippets and SERP features. Useful for SEO audits and competitor checks. CX Codex +1 763installs scraping-youtube-channel-info Collect YouTube channel details from URLs, handles, or keywords. Use it to export channel stats or find channels by topic. CX Codex +1 761installs scraping-youtube-playlist Collects video details from a YouTube playlist through an Apify scraper. Use it to export playlist metadata and stats for analysis. CX Codex +1 759installs scraping-google-search-results Pulls Google search results for any query: URLs, titles, snippets, positions and SERP feature types. Handy when you need raw SERP data for SEO or competitor work. CX Codex +1 759installs benchmarking-instagram-influencer-engagement Pulls recent Instagram posts and turns them into engagement benchmarks: followers, average likes and comments, ER, posting frequency. CX Codex +1 757installs extracting-tiktok-comments-for-research Collects TikTok comments and supports sentiment, theme, and top-reaction analysis. Useful for audience research, product feedback, and content studies. CX Codex +1 757installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor