GTM systems

A signal engine for a venture and GTM advisory firm.

In October 2026, as a work sample during the firm’s hiring process, I built a working system for its Growth and GTM practice. It finds companies that look like the practice’s current cybersecurity clients, gives a current reason to reach out to each one, finds the right people, and loads them into Apollo and Salesforce. Nothing was sent to prospects.

222

companies found that resemble the practice’s clients

147

read for fit by Claude, each with a one-line reason

45

passed the scoring rules with a source-checked reason to reach out now

70

verified contacts loaded into Apollo and Salesforce

~$10

in data credits per run, logged step by step

How it runs

Seven steps, each with its own input and output file and a log of counts and credits. Paid steps only run on companies that already passed the free ones.

  1. 1

    Profile the clients

    Looked up the practice’s current clients and turned what they share into scoring rules. Then scored the clients themselves with those rules to see how many the rules would have found.

  2. 2

    Find companies with a signal

    Apollo’s API returns companies in the same market that raised a recent seed or Series A. Each run skips companies it has already seen, so a weekly rerun only pays for what is new.

  3. 3

    Enrich and run free checks first

    Funding history, headcount and location come back for each company. Anything owned by another company, too old or too large drops out before any judgment work.

  4. 4

    Read for fit

    Claude reads each company’s description and marks yes, no or unsure with one line of reasoning. Unsure goes to a person.

  5. 5

    Check hiring and score

    Open sales roles from the last 120 days count toward the score. Every qualifying funding round is confirmed at a public source. Three of 48 were wrong in the data provider and were corrected.

  6. 6

    Find the right people

    A sales leader and a founder at each qualified company, verified emails only. Wave one is one person per company. The second contact waits.

  7. 7

    Load the tools

    Custom contact fields and a three-step sequence created in Apollo through its API, left inactive. Leads and a report created in Salesforce. A scheduled task reruns the search every Monday.

What it leaves out matters too

176 of the 221 new companies did not qualify, and each one has a written reason. Keeping bad fits out of the CRM and the sequence protects the sending domain and the sales team’s time.

A second practice, industrial technology, ran the same day from a new settings file. It found 223 companies and qualified 26. Its rules matched fewer of that practice’s own clients, which is the first thing I would tighten with real reply data.

Built with

PythonClaude CodeFive Claude skillsApollo APISalesforce CLIScheduled runs

The judgment steps, like reading for fit and checking sources, are written as Claude skills so someone else on a GTM team can run them the same way.