Try DiscoverAI ↓
https://discoverai-ae.vercel.app
The Problem
Applied Engineering (AE) is a student software agency at SJSU. We partner with real companies, from early-stage startups to enterprise organizations, to scope and deliver technical projects over a semester. Every semester, our BD and leadership team repeats the same exhausting loop:
- Find a company worth pitching.
- Manually research them. Tabs open everywhere, inconsistent notes, half-remembered news.
- Brainstorm project ideas in a group chat or whiteboard session, often unmoored from real signals.
- Write a pitch deck. Hope it lands.
The problem wasn't effort. The team was working hard. A generic pitch ("we can build you a dashboard!") gets ignored. A signal-anchored pitch ("we saw you acquired DataCo last quarter and your teams are probably managing two separate schemas") gets a meeting.
We were doing this manually, inconsistently, and slowly. And as the org scaled and a deeper company pipeline, the process didn't scale with it.
DiscoverAI was built to fix that.
Engineering Highlights
- Parallel research pipeline. Used
asyncio.gather to fan out 6 Tavily queries, a homepage + /about scrape, and a logo resolution step concurrently. A single research call surfaces up to 30 distinct web sources in the wall-clock time it would take to run one.
- Hot-reloadable prompt config. Built
guidelines.md as a file-watched prompt component so non-engineers on AE's BD team can iterate on ideation quality without touching the codebase or restarting the server.
- Signal-first ideation schema. Enforced a strict JSON pitch format anchored to named, dated company signals, measurably reducing generic output and producing pitches that paste directly into outreach email.
- Streaming SSE canvas. FastAPI streams each generated node + edge as a single SSE chunk; the React Flow frontend runs a custom tree layout algorithm to position cards as they arrive. First idea renders in ~3 seconds vs. 10 to 15 seconds for the full batch.
- Multi-provider LLM layer. Abstracted OpenAI and Anthropic behind a single LangChain factory, with per-request provider overrides for A/B output comparison.
- Conversation-as-graph. The React Flow graph is the single source of truth for chat history, branching, session restoration, and PDF export. No parallel state to sync.
What DiscoverAI Does