AI Job Hunter
Job search is a job in itself
Every morning you open hh.ru, scroll the feed, try to figure out if "Middle/Senior frontend in a fintech startup with React/Vue/Angular 3+ years" is right for you. Then the same on Habr. Then a cover letter that by the third vacancy becomes a copy-paste with the company name swapped. By day five you want to quit. 80% of vacancies you read don't fit — but you only realize that after reading the full description.
Hunter does steps 1–4 for you: finds, scores, filters, writes the cover letter.
Push instead of pull
Fill out your profile in a couple of minutes — or upload a PDF/DOCX resume, the bot will extract data via Groq Llama 3.3 70B. Three times a day (09:00, 13:00, 17:00 MSK) the bot scrapes five sources: hh.ru, Habr Career, Getmatch, SuperJob and HireHi.ru. Every vacancy goes through personal scoring 0–100. A morning digest arrives — only what actually fits.

Scoring: the product core
The bot doesn't just parse vacancies — it understands how well each one fits a specific user. Not by keywords, but by four weighted parameters:
Skills — 40%. The first skill in your list weighs more. Logic: what you type first is your strongest skill.
Salary — 25%. Range overlap with currency normalization.
Format — 20%. Remote, hybrid, office. Exact match — 100. Hybrid for a remote worker — 50.
Industry — 15%. 21 industries with keyword sets matched against description and company.
Red flags halve the score. Blacklisted companies — zero. Scoring is self-improving: responses boost skill weights, hidden vacancies lower them.
Cover letters in 5 seconds
Tap "Letter" — Gemini 2.5 Pro receives the vacancy description, user profile, company context. It generates a cover letter that specifically addresses the requirements. No fabrication — only facts from the profile. Don't like it — "Another version" regenerates with a different structure. Gemini 2.5 Pro for letters, Groq for parsing — free tiers, zero AI costs.
Each letter — 5 seconds instead of 15 minutes.
Freemium via Telegram Stars
Currently the bot runs in free access mode — all features are available to every user. Monetization will be enabled once the audience grows.
Planned model:
First letter per vacancy — free. Restyle and filters — Pro or credits.
Pro: 200 Stars/week or 700 Stars/month. Unlimited letters, 5 push alerts per scrape, source filters.
Credits: 100 Stars = 3 restyles, 300 Stars = 10. One-time purchase, no commitment.
Stars is Telegram's native currency. No card details needed. Tap — pay — done. Referral program: invite a friend — +1 month Pro on their first payment.
Features that retain
Response tracker — "Applied" → "Interview" → "Offer" or "Rejected". Full funnel in stats.
Weekly summary — every Monday: vacancies found, responses, average score.
Inline mode — @jobhunt_ai_bot react developer in any chat. Share a vacancy with a friend in 2 seconds.
"I found a job" — the bot congratulates and sets a reminder in 90 days: "How's the new place?"
Process and stack
The entire project — from product strategy and monetization to production — by one person.
Bot: TypeScript, grammY, SQLite (WAL), node-cron, cheerio
AI: Gemini 2.5 Pro for letters, Groq Llama 3.3 70B for parsing (free tiers)
Scrapers: hh.ru API + Habr Career + Getmatch + SuperJob + HireHi.ru, User-Agent rotation, rate-limiting
Infra: Railway 24/7 (~$5/mo), GitHub Actions (CI + backups), launchd (strategist)
Quality: Vitest (452 tests, ~35% coverage), pre-commit typecheck, CodeRabbit reviews
One process, one database file, one server. One Pro user covers the infrastructure cost.