AutomationAIBackend
Jobs Scraper
Watches Instagram accounts by region, scrapes vacancy posts, and lets Gemini sort real jobs from noise before anything hits the database.
- Client
- Toploker.com
- Year
- 2026
Internal system, not public

Gemini AIClassification
LivePer-run logs
The problem
A lot of Indonesian vacancies are just an Instagram post with a WhatsApp number. The same accounts mix jobs with promos and reposts, and scrapers break without telling you why.
What I did
Puppeteer on a schedule, Gemini classification, Zod validation on every record, and a dashboard that streams each run's logs live, so a failed run can actually be explained.
Stack
BunReact 19PostgreSQLPuppeteerGeminiWebSocket












