See llms.txt for all machine-readable content.

Back to Templates

Score remote job listings against your CV with Gemini and Telegram alerts

Quick Overview

This workflow runs twice a day to fetch new remote job listings from Remotive, Remote OK, and We Work Remotely, filters them by your keywords, scores each job against your CV using Google Gemini, and sends high-scoring matches to a Telegram chat.

How it works

  1. Runs on a schedule at 9am and 5pm.
  2. Fetches job listings in parallel from the Remotive API, the Remote OK API, and the We Work Remotely RSS feed, continuing even if one source fails.
  3. Normalizes the different job formats, filters to recent listings that match your keywords, sorts newest first, and limits how many jobs get scored per run.
  4. Skips jobs that have already been processed in previous executions using the job URL as the unique key.
  5. Uses Google Gemini to score each job against your CV and preferences and returns structured JSON with a score, verdict, matching skills, missing skills, and location suitability.
  6. Filters to jobs that meet or exceed your minimum score and sends a formatted alert to Telegram, with an optional (disabled) step to append the match to Google Sheets.

Setup

  1. Update the CV text, keywords, minimum score threshold, job age and batch limits, and your Telegram chat ID in the CV and preferences settings.
  2. Add a Google Gemini (PaLM) API credential for the Gemini chat model.
  3. Create a Telegram bot with @BotFather, add the Telegram credential in n8n, and set the target chat ID after messaging the bot.
  4. Optional: enable the Google Sheets logging step, add a Google Sheets OAuth2 credential, set the spreadsheet ID, and create a sheet tab named “Matches.”