Inspiration

I've been job hunting in London quite a few times. And every time, I end up in the same place — Trello (shows my age), a Notion board, a spreadsheet — logging applications, moving cards between columns, and feeling organised but not actually prepared.

I know job search tools exist. But from what I've seen, they're mostly trackers. They tell you where you are. They don't help you win.

What I actually needed was something that would research the company before I walked in. That would tell me what this specific interviewer cares about. That would watch my last interview transcript and tell me what to fix before the next round. That would look across every role I was talking to and tell me how to negotiate when an offer landed.

So I built Debrief.

What it does

Track — Paste any job posting. Claude extracts the company, role, salary, and what kind of PM they're actually looking for, and assesses fit against your CV.

Brief — Before every interview, run a pre-interview briefing. Debrief searches the web for recent company news, decodes the role, researches your interviewer, and hands you talking points, an opening question, and a watch-out. Briefings are saved per interview stage — your Screen brief and your Final brief are separate, and each one is informed by the feedback from your previous debrief.

Debrief — After the interview, paste your transcript from Granola. Get a score out of 10, specific coaching on what went well and what to improve, salary signals, and a stage recommendation.

Negotiate — When an offer lands, Claude analyses your whole pipeline — salary signals from every role, competing offers, late-stage interviews — and builds a negotiation strategy with a script you can actually use.

How we built it

React + Vite + Tailwind CSS for the frontend, Claude API (claude-sonnet-4-6) for all AI features with web search enabled for The Briefing, Vercel for hosting, Novus.ai for analytics, and Granola for interview transcripts. All Claude API calls are made directly from the browser. It took me one week of evenings and weekends.

Challenges I ran into

Granola uses OAuth rather than a static token, making per-user auth too complex for the hackathon timeline — so I pivoted to a transcript paste flow. The AI analysis is the differentiator, not the connection method. I also had to handle Claude's web search responses carefully, extracting JSON from mixed content blocks that include tool use and tool result alongside text. Scope discipline was the hardest challenge — the ideas list was long and the clock was not.

Accomplishments that I'm proud of

The per-stage briefing loop. Each interview round gets its own brief, saved separately, and each new brief is automatically informed by the coaching from your previous debrief. Brief → interview → debrief → better brief → repeat. That closes a loop no other tool I've seen closes.

What I learned

Cut faster. Ship sooner. And Claude as a browser-side API is remarkably powerful — the web search integration alone makes The Briefing feel like magic. Also: building a product about job searching while actively procrastinating on job searching is a very specific kind of irony.

What's next for Debrief

Mock interview prep tailored to specific interview types (product sense, execution, leadership). Google Calendar integration to surface upcoming interviews automatically. AI chat across the entire pipeline ("where am I losing deals?", "which role pays best?"). A job search funnel with drop-off analysis. And a richer profile beyond CV paste — sectors, seniority targets, salary expectations — so every AI feature gets more personal. Basically: v1 was built in a week. v2 is going to be good.

Built With

  • anthropic-web-search
  • claude-api-(claude-sonnet-4-6)
  • granola
  • novus.ai
  • react
  • tailwind-css
  • vercel
  • vite
Share this project:

Updates