This project is an end-to-end automated job-hunting assistant built with n8n.
It runs daily, scrapes LinkedIn for fresh jobs, evaluates them using Google Gemini AI, writes tailored cover letters, and sends the best matches to Telegram — completely hands-free.
🎥 Watch the video walkthrough: Google Drive Video Link
The workflow starts with a Schedule Trigger that runs every day at 5 PM.
- Download File → Fetches the latest resume from Google Drive.
- Extract From File → Converts your PDF resume to raw text (used by AI later).
- Get Rows in Sheet → Reads your job preferences (keywords, location, etc.) from Google Sheets.
- Create Search URL → Builds a LinkedIn job search URL with your filters (custom JS).
- Fetch Jobs from LinkedIn → Sends an HTTP request to download the HTML of search results.
- HTML Extractor → Parses out all job posting links.
- Split Out → Splits the list of jobs into individual items for looping.
Each job goes through a structured loop:
- Wait (2s) → Prevents rate-limiting.
- HTTP Request → Fetches job details page.
- HTML Parser → Extracts title, company, location, and job description.
- Edit Fields → Cleans and formats the extracted data.
- AI Agent (Google Gemini Chat Model) → Compares the job with your resume and:
- Calculates a Job Match Score (1–100)
- Writes a personalized cover letter
- Edit Fields → Parses the AI response (JSON).
- Append or Update Row → Logs results to your Google Sheet with job data, score, and cover letter.
- If Node → Checks if the AI score ≥ 50.
- Send Message (Telegram) → Alerts you instantly with job details and your auto-generated cover letter.
- Loop Over Items → Continues to the next job until the list is done.
| Tool | Purpose |
|---|---|
| n8n | Automation and orchestration |
| Google Drive | Resume storage |
| Google Sheets | Preference & results database |
| Job data source | |
| Google Gemini Chat Model | AI analysis and cover letter generation |
| Telegram Bot | Real-time job alerts |
- Trigger → Resume + Preferences
- LinkedIn Scrape → Job Listings
- AI Evaluation → Match Score + Cover Letter
- Save to Sheet → Structured Results
- Telegram Alert → Best Matches
All OAuth and API credentials have been removed from the exported workflow JSON for security reasons.
After importing this workflow into n8n, you’ll need to reconnect your own Google Drive, Google Sheets, and Telegram credentials.