Quick overview
This workflow runs weekly to discover live LinkedIn job postings via Bright Data, uses OpenAI (GPT-5.6) to extract required skills and any stated pay, compares results with prior runs stored in Google Sheets, and posts a market digest to Slack.
How it works
- Runs on a weekly schedule and sets the target role keyword, location, and scan limits.
- Triggers a Bright Data keyword-based LinkedIn jobs discovery and polls the snapshot status until the results are ready.
- Downloads the discovered job posts, removes duplicates and low-quality entries, and trims descriptions while preserving any pay-related text.
- Uses OpenAI (GPT-5.6) to extract up to 10 concrete skills plus experience, remote policy, and any disclosed pay from each posting.
- Aggregates skills by counting how many postings require each one, normalises pay into annual figures when possible, and calculates market-level summaries.
- Reads the previous scan from Google Sheets to flag rising, falling, new, and dropped skills compared to the last date for the same role and market.
- Writes one row per skill to Google Sheets for trending over time and posts a formatted digest (including a brief narrative) to a Slack channel.
Setup
- Add a Bright Data API key using an HTTP Header Auth credential with
Authorization: Bearer <YOUR_KEY>.
- Add OpenAI API credentials for the GPT-5.6 chat model used for extraction and brief writing.
- Connect Google Sheets credentials, create a spreadsheet with a sheet/tab named "Skill demand", and set the spreadsheet URL in the configuration.
- Connect Slack credentials and set the target channel name in the configuration.
- Update the role keyword, location, country, time range, job type, and jobs-per-scan values in the configuration before activating the workflow.