Case study
01
I wanted to learn automation properly, and I was already looking for a role. So I built the search itself as the thing to automate.
Each square is one in a hundred. Filled squares are the ones that converted.
Cold email reply rate
Replies against emails sent
8.7%
~9 replies per 100 emails
LinkedIn application → live process
Applications that reached a real conversation
~6%
~6 conversations per 100 applications
Cold email → live process
Emails that reached a real conversation
~4%
~4 conversations per 100 emails
533 sessions across the two months, from 47 distinct sources. Where they came from:
02
Before building anything I had to be clear on the claim. The rule: every line on my resume or my site has to survive being questioned in an interview. If I can't defend the verb, the verb changes.
That mostly worked by subtraction. Ownership language got downgraded wherever I was on the team rather than running it, and one planned resume version got cut entirely because the evidence wasn't there.
What survived
One sentence, every word defensible.
Every resume the system produces uses my existing bullets verbatim. It reorders them and weaves in the language of the job description, and that is all it is allowed to do. When a role asks for something I don't have, it flags the gap instead of inventing a bullet.
03
Four layers, and it works like any other funnel.
Layer 01
Find companies at the right stage, and roles that are actually open.
8 skills
Layer 02
Turn a company name into something I can write a specific email about.
5 skills
Layer 03
Produce the resume, the letter, the positioning and the outreach.
4 skills
Layer 04
Track what I sent, what came back, and who visited.
2 skills + analytics
Everything lives in Google Sheets. Every layer is a named Claude skill I wrote, so I run it by typing a command instead of remembering a process. Each one is resumable — it skips rows already done, so a run that dies halfway costs nothing.
04
Every item below is a Claude skill I wrote — a set of instructions Claude runs on command, against my own sheets and inbox.
basic
Funding and business model
company
Footprint and hiring signals
founder
People and warm paths
summary
Synthesis and priority band
05
I am not an engineer, so most of this got found by watching it fail.
The company-search API I designed the enrichment layer around wasn't available on my plan, so the whole pipeline was rebuilt to lead with web search.
The endpoint behind every sheet returns an error page even when a write succeeds, so nothing is trusted until the rows are read back.
Sending data positionally instead of keyed by column name silently created junk columns while reporting success.
It was capturing about a third of the results, because the page height it used to detect the end never changes.
Profile research is capped at eighty views a day, so the founder layer isn't a job that completes. It is a day-sized batch that stops on its own.
06
I built this expecting cold email to be the engine. My own tracker said otherwise.
Instrument 01
Most live processes came from LinkedIn, not from the cold emails I had been optimising.
Instrument 02
Cold email accounted for under 4% of sessions across July and August. The channel taking most of my effort was barely showing up.
At 8.7% reply and roughly 4 to 6% conversion, the top of the funnel is working. The larger number sits further down, after someone agrees to talk. So the effort moved there.
Still building.