Inspiration
Students are constantly told that networking is important, but rarely taught how to actually do it well. Reaching out to professionals often feels awkward, intimidating, and high‑stakes, especially when you are early in your journey and lack experience or connections. Most students end up guessing who to contact, copying generic templates, or avoiding networking altogether.
I realized the real gap is not effort or ambition, but clarity. Students do not know who is worth reaching out to, why they are a good fit, or how to approach them without sounding generic or desperate. This uncertainty turns networking into a source of anxiety instead of leverage.
I was inspired to make effective networking accessible to students. I wanted to replace guesswork with context‑aware guidance, helping students understand power dynamics, shared signals, and the right way to start conversations that actually get replies.
What it does
ReachRight is an AI-powered web application that helps students network smarter using profile information. A user provides a profile link. ReachRight then analyzes both sides and delivers clear, actionable guidance through:
- Targeting Insights: Explains whether reaching out makes sense, what the power gap is, and what angle is most appropriate.
- Personalized Strategy: Breaks down why the person is relevant and what common ground or leverage points exist.
- Actionable Outreach Guidance: Provides concrete suggestions on how to approach the conversation, what to say first, and what to avoid.
- Conversation Framing: Keeps all advice direct and student-facing, eliminating generic or blog-style networking tips.
The result is practical guidance that feels like a real back-and-forth conversation, not a textbook.
How we built it
- Frontend: React (JavaScript) for a fast, responsive single-page application
- Backend: FastAPI (Python) for API routing, data processing, and AI orchestration
- AI / LLM: Qwen 2.5 (32B) for structured reasoning and socially nuanced advice
- Profile Data Access: Scrapfly.io API for resilient LinkedIn data extraction (anti-bot handling)
- Context Orchestration: Custom Python logic to extract, normalize, and sequence high-signal profile fields
- APIs: LinkedIn (indirect via Scrapfly), internal FastAPI endpoints
- Development Tools: Git, GitHub, REST, JSON
Challenges we ran into
LinkedIn, LinkedIn, LinkedIn.
The first major wall was LinkedIn itself. Profile data is central to ReachRight’s value, but LinkedIn is explicitly hostile to scraping. Rate limits, bot detection, dynamic rendering, and sudden response changes meant that naive approaches failed almost immediately. What looked like a straightforward data extraction problem quickly turned into an adversarial one.
I spent hours iterating through scraping strategies, hitting dead ends, getting blocked, and rolling back approaches that seemed promising on paper but collapsed in practice. The counterintuitive realization was that pushing harder at the scraping layer was the wrong move. Instead of fighting LinkedIn directly, I zoomed out and shifted to using Scrapfly.io, which abstracts away much of the anti-bot complexity. This unlocked reliable access to profile data, but introduced a new constraint: Scrapfly’s API pricing made it unsuitable for live demos, forcing me to design the system so it could gracefully fall back to mocked or cached data while preserving realistic behavior.
Once data access was solved, a harder problem emerged: AI context orchestration. Feeding raw profile data into an LLM consistently produced hallucinations, generic advice, or overconfident conclusions. The issue was not model intelligence, but how context was structured. Too much information caused drift and verbosity. Too little caused shallow or misleading advice.
Instead of tuning prompts endlessly, I again had to zoom out and reframe the problem. The solution was to explicitly orchestrate context: extracting only high-signal fields such as role, seniority, industry, and shared context, then sequencing how the model reasoned over them. Strategy and reasoning were separated from phrasing, and strict output constraints were enforced to prevent blog-style responses.
Balancing strong reasoning with lightweight responses became an exercise in subtraction. Every extra sentence increased latency and hallucination risk. The final system favors structured inputs, narrow reasoning scopes, and short, direct outputs, allowing the AI to stay grounded while still producing nuanced, student-relevant advice.
Accomplishments that we're proud of
- Designing a system that delivers networking advice without sounding robotic or generic
- Successfully extracting meaningful signals from limited profile data
- Building a full-stack application that feels conversational, not instructional
- Creating a product that addresses a real student pain point
What we learned
- Model choice matters less than prompt discipline and input structure
- Social reasoning is a different problem than technical reasoning
- Clear constraints dramatically improve output quality
- Good UX in AI products is often about what you remove, not what you add
What's next for ReachRight
- User accounts to track outreach attempts and outcomes over time
- Support for multiple platforms beyond LinkedIn
- Feedback loops to refine advice based on real response rates
- Expanding beyond students into early-career professionals
Log in or sign up for Devpost to join the conversation.