Inspiration
I built Referral Buddy from my own experience searching for jobs. Finding a role is only the beginning. Reaching someone at the company takes more work: identifying relevant people, finding a contact channel, explaining why your experience fits, and remembering to follow up.
My earlier project, HireTrack, helped simplify job applications. Referral Buddy expands its referral concept into a separate outreach workflow:
Job posting → relevant people → personalized introduction → follow-up
The goal is to help candidates start thoughtful conversations. A referral still depends on someone choosing to endorse their work.
What it does
Referral Buddy turns job opportunities into an organized outreach plan.
Users can:
- Search for jobs or add posting links, then select up to five opportunities.
- Discover public profiles of recruiters, potential teammates, and possible team leaders.
- Choose up to 15 contacts across those jobs.
- Upload a resume and generate personalized messages grounded in their experience and each target role.
- Look up work emails, review verification evidence, or open a LinkedIn profile when email is unavailable.
- Edit and approve messages before sending separate personalized emails through Gmail.
- Track sent history, check saved conversations for replies and certain bounce notices, and review scheduled follow-ups.
Each send saves a follow-up date five days later and an editable draft. The app flags due follow-ups while open, and the user decides whether to send them.
An individual introduction flow also helps candidates describe real project examples and create a brief someone could forward.
How I built it
The frontend uses HTML, CSS, and JavaScript, with browser localStorage for saved work. A Python backend coordinates job extraction, search, email discovery, and model calls.
The AI runs through the Nebius API, using NVIDIA’s Nemotron 3 Nano model:
nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B
It powers job/resume analysis, evidence interviews, answer polishing, referral briefs, personalized outreach, and optional conversation practice. Prompts request structured JSON and instruct the model to use supplied facts rather than invent experience or personal connections. Users can review and edit the output.
Tavily powers job and public profile discovery, with Brave Search as an alternative for profiles. Hunter provides optional work email lookup. The Gmail API supports reviewed sending, labels, and checks of saved conversations.
The shared preview is deployed on Render using Docker. It supports live AI and search, while Gmail actions are disabled to protect my personal account. The local build supports the complete sending and tracking flow.
Challenges I faced
Finding a person does not prove relevance
Public search results can mention a company without confirming that someone currently works there or belongs to the hiring team. I added profile links and supporting excerpts so users can inspect the evidence before reaching out.
Email discovery has uncertainty
Catch-all domains do not confirm individual mailboxes, and Gmail accepting a send does not prove delivery. The app displays lookup evidence, blocks known bounced addresses, and pauses a batch when sending cannot be confirmed.
Personalization must stay truthful
A job description can tempt a model to describe the candidate as having every requested skill. I tightened prompts around supplied resume facts and made the exact target role visible beside each draft. Human review remains essential.
The interface became overwhelming
Early versions required too much scrolling and made bulk outreach hard to understand. I reorganized the experience into three stages: find jobs, find people, and plan outreach. Selection summaries, review tables, consistent navigation, and an interactive tour make the next action clearer.
What I learned
Building a useful AI application requires more than generating fluent text. The system needs relevant context, clear handling of failures, and visible uncertainty.
I also learned that automation should preserve the user’s voice and judgment. Contact discovery and drafting save work, but candidates still need to check who they are contacting and what they are claiming.
What I’m proud of
Referral Buddy connects discovery, drafting, reviewed sending, and follow-up tracking in one working prototype. Users can prepare outreach across several jobs while keeping each message specific to a person and role.
It brings an NVIDIA open model served through Nebius into a practical workflow that addresses a problem I have experienced myself.
What’s next
I plan to add individual accounts, private server-side storage, separate Gmail connections for each user, stronger contact relevance checks, and durable follow-up scheduling.
The immediate priority is testing with new users and improving the places where they hesitate.
Project background
Referral Buddy builds on HireTrack’s earlier Get Referral concept. This separate prototype expands that concept with job extraction and discovery, resume uploads, public profile searches, email lookup evidence, bulk personalized drafting, reviewed Gmail sending, tracking, follow-up scheduling, and a hosted preview.
Log in or sign up for Devpost to join the conversation.