A Discord bot that monitors LinkedIn for new software engineer job postings and sends notifications to a Discord channel.
- Automatically checks LinkedIn for new software engineer job postings
- Sends notifications to a specified Discord channel
- Filters for experience level (Entry Level, Associate, etc.)
- Avoids duplicate notifications
- Customizable check interval
- Node.js (v16.9.0 or higher)
- A Discord account and server
- A Discord bot token
- Go to the Discord Developer Portal
- Click "New Application" and give it a name
- Go to the "Bot" tab and click "Add Bot"
- Under the "TOKEN" section, click "Copy" to copy your bot token
- Under "Privileged Gateway Intents", enable:
- MESSAGE CONTENT INTENT
- SERVER MEMBERS INTENT
- In the Discord Developer Portal, go to the "OAuth2" > "URL Generator" tab
- Select the "bot" scope
- Select the following permissions:
- Read Messages/View Channels
- Send Messages
- Embed Links
- Copy the generated URL and open it in your browser
- Select your server and authorize the bot
- Clone or download this repository
- Install dependencies:
npm install - Copy the
.env.examplefile to.envand update with your:- Discord bot token
- Discord channel ID (right-click on channel > Copy ID)
- Desired check interval (in milliseconds)
npm start
The bot will automatically check for new job postings at the interval specified in your .env file.
!jobfilter experience [LEVEL]- Set the experience level filter (ENTRY_LEVEL, ASSOCIATE, MID_SENIOR, DIRECTOR, EXECUTIVE, NONE)!jobcheck- Manually check for new job postings!jobhelp- Show help message with available commands
- LinkedIn may change their website structure, which could break the scraper. If this happens, the bot will need to be updated.
- To avoid potential blocking by LinkedIn, the bot uses a delay between requests and a user agent header.
- This bot is for educational purposes only. Be respectful of LinkedIn's terms of service and rate limits.
You can modify the config object in the code to change:
- The job search query
- Additional filters
- Check interval
- Storage file location