JobGuard
Scan Before You Sign
The problem JobGuard solves
- Job scams and fake recruiter messages are widespread and often hard to spot in the moment — a vague "amazing opportunity" DM, a too-good-to-be-true salary, or a recruiter pushing you to WhatsApp/Telegram and asking for a "registration deposit."
- JobGuard lets anyone paste a message or upload a screenshot of a job offer/recruiter DM and get an instant, evidence-based risk assessment — not a single AI's guess, but a consensus from 3 independent models cross-checking the same message.
- If the message doesn't have enough detail to judge confidently, JobGuard asks a natural follow-up question (company name, role, pay) instead of guessing — the same way a savvy friend would probe before giving you an opinion.
- Each result comes with a category-by-category breakdown (company legitimacy, compensation realism, urgency tactics, contact method, payment requests) with real reasoning per category, not just a single opaque number.
- Built for anyone actively job hunting — students, international students unfamiliar with local hiring norms, and early-career applicants who are the most common targets of these scams.
Challenges we ran into
- Multi-model reliability: Running 3 AI models in parallel (DeepSeek, Kimi-K2.6, MiniMax-M2.7) surfaced real-world messiness — one model wrapped its JSON output in
<think>reasoning tags that broke our parser, and models occasionally timed out inconsistently. We fixed the parsing bug, added retry logic, and measured real reliability (9/10 test runs achieved full 3-model consensus) before trusting the pipeline. - Two disconnected fact-extraction systems: Our conversation-tracking logic and our AI-prompt signal extraction were built as two separate regex-based systems with different field names. This caused a real bug — the risk breakdown panel would show "insufficient information" even when a message clearly had salary and contact details, and facts could leak between unrelated conversations in the same session. We traced this to the root cause and unified both into a single shared extraction path.
- OCR text doesn't look like normal sentences: Job flyers and screenshots produce fragmented, bullet-style text very different from a typed message, which broke our narrative-focused signal extraction. We fixed this by falling back to the AI model's own extracted evidence when regex patterns come up empty, instead of only trusting rigid pattern matching.
- Making "not enough information" feel human, not robotic: Early versions surfaced raw debug-style text like "Model disagreement detected" directly in the chat when a message was too vague to score. We're actively refining this so the assistant asks a natural clarifying question instead of exposing internal model-consensus mechanics to the user.
Tracks Applied (1)
AI For Society
Gonka Router
Discussion
Builders also viewed
See more projects on Devfolio
