Personal

CareerBot, a Job Search RPA

A Python RPA that collects job postings, scores them against my resume and drafts cover letters

Period | 2025.12

Visit
  • #Python
  • #Playwright
  • #Selenium
  • #TF-IDF
  • #SQLite
  • #Notion API

Repetitive job hunting, from search to cover letter drafts

Problem

  • Every application meant browsing job sites and comparing postings with my background by hand
  • Writing a fresh cover letter draft for each posting took a lot of time

My Role

  • Extracted role, skill and industry keywords from Notion/PDF resumes with TF-IDF and n-grams, normalized with a synonym dictionary
  • Built scrapers for job postings with Playwright and Selenium
  • Implemented cosine-similarity matching weighted role 0.4, skill 0.4, industry 0.2, recommending matches above 70%
  • Automated the ChatGPT web UI to produce three drafts per company, followed by user review

Result

  • One pipeline from resume input to recommendations, drafts and review
  • Postings, matches and drafts stored in SQLite so runs can be compared
Flow from resume input to user review
Flow from resume input to user review