job-hunter

all projects

A Go toolkit for LinkedIn job searches and scheduled, AI-filtered Discord notifications.

Open SourceGoDiscordAIMySQL
job-hunter Discord notification with an AWS job listing and an AI-generated overview
AI-filtered job notification in Discord1 / 2

LinkedIn search and Discord alerts

job-hunter is an open-source Go toolkit for finding jobs from LinkedIn's public listings without a LinkedIn account. It includes a reusable search library, the jobfinder command-line tool, and jobbot, a Discord bot that runs saved searches and sends AI-filtered job notifications.

Try the CLI

With Go 1.25 or newer installed:

git clone https://github.com/AkmalFairuz/job-hunter.git
cd job-hunter
go build -o jobfinder ./cmd/jobfinder
./jobfinder --query "software engineer" --location "Jakarta" --results 20 --hours-old 24

Results can be displayed as a table, wide text, or JSON. Add --fetch-description to retrieve job descriptions, or --output-file to save the results.

Technical implementation

The project is written in Go, with a shared finder package behind the CLI and Discord bot. It parses LinkedIn's public HTML using goquery and converts job descriptions into Markdown for downstream processing.

Searches across multiple locations run round-robin, combining results under one limit and deduplicating them by LinkedIn job ID. Description fetching is optional, and the library can return partial results alongside an error when only part of a search succeeds.

The Discord bot uses DiscordGo for slash commands and notifications, with MySQL and SQLx for saved searches and notification history. Searches run on a schedule or through /jobs run; notification tracking suppresses duplicates and recognizes reposted listings.

An OpenAI-compatible API evaluates jobs against the search query and custom criteria, returning a match decision, reason, and concise overview as JSON. Decisions are cached in MySQL so unchanged job content can reuse earlier evaluations across duplicate searches and reposts.

Source and setup

Explore the source code and bot setup guide, or browse the Go library documentation. The project is available under the MIT license.