explaingit

belalabdelaty/job-tracker

12PythonAudience · generalComplexity · 2/5Setup · moderate

TLDR

A free Python bot that checks 25+ tech company job boards every two hours via GitHub Actions and sends you alerts on Telegram, Discord, WhatsApp, or email whenever a new software engineering internship or entry-level role appears.

Mindmap

mindmap
  root((job-tracker))
    What it does
      Scrapes job boards
      Filters roles
      Sends alerts
    Companies tracked
      Big tech
      AI research
      Fintech
    Notification channels
      Telegram
      Discord
      WhatsApp
      Email
    Tech Stack
      Python
      GitHub Actions
      Greenhouse
      Lever
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Get instant Telegram or Discord alerts when Anthropic, Stripe, or Figma posts a new software engineering internship

USE CASE 2

Fork the repo, add your notification credentials as GitHub Actions secrets, and run it completely free within GitHub's free tier

USE CASE 3

Add a new company to track by inserting one line of Python with the Greenhouse or Lever slug from that company's jobs URL

USE CASE 4

Override the default keyword list to also surface data science or product roles alongside engineering ones

Tech stack

PythonGitHub Actionsrequests

Getting it running

Difficulty · moderate Time to first run · 30min

Requires adding notification credentials (Telegram, Discord, etc.) as secrets in your forked GitHub repository.

No license information was mentioned in the explanation.

In plain English

Job Tracker Bot is a Python tool that watches the careers pages of more than 25 technology companies and sends you a message whenever a new software engineering internship or entry-level role appears. It checks for openings every two hours by running automatically on GitHub Actions, which means it costs nothing to host as long as you stay within GitHub's free tier limits. The companies it monitors include well-known names in big tech, AI research, developer tools, finance, and fintech, such as Amazon, Anthropic, Stripe, Figma, Jane Street, and Databricks. It pulls listings from Greenhouse and Lever, which are popular job-posting platforms used by many startups and mid-size companies. Companies that rely on heavy JavaScript on their careers pages (Google, Apple, Meta, Netflix) cannot be scraped this way, so the README suggests LinkedIn or Indeed as alternatives for those. When the bot finds a new job that matches your filters, it can notify you through Telegram, Discord, WhatsApp via Twilio, or email via Gmail. You choose which channels to enable by adding the relevant credentials as GitHub Actions secrets in your forked copy of the repository. By default the bot surfaces only software engineering internships and entry-level roles, and automatically hides senior positions and non-engineering disciplines like marketing, design, or data science. You can override this with a custom keyword list. Adding a new company to track is intentionally straightforward: most Greenhouse and Lever companies require only one line of Python with the company slug from their jobs URL. The list of already-seen jobs is stored in GitHub Actions cache rather than committed to the repository, so your git history stays clean and the bot correctly skips roles it has already reported. The project consists of a single scraper script and a GitHub Actions workflow file, keeping the codebase compact and easy to modify. Local testing requires only the requests library and a few environment variables.

Copy-paste prompts

Prompt 1
How do I fork job-tracker, add my Telegram bot token as a GitHub Actions secret, and start receiving job alerts?
Prompt 2
Walk me through adding a new company to job-tracker using its Greenhouse or Lever slug so I can track a startup not on the default list.
Prompt 3
How does job-tracker store seen jobs to avoid duplicate alerts, and how do I reset that cache to reprocess all current listings?
Prompt 4
I want job-tracker to notify me about data science roles too. How do I update the keyword filter to include them?
Open on GitHub → Explain another repo

← belalabdelaty on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.