🛠️ A build log, not a résumé

I got tired of applying to jobs.
So I engineered the search.

I'm a data & AI platform leader. When I started looking for my next role, I did what I'd do at work: built a system. Sourced roles programmatically, scored them for fit, tracked everything, and mined my network — then documented the whole thing in the open.

Every section below flips to reveal the code behind it — the whole search, engineered in the open.

Applications submitted
Industries targeted
Strong-fit matches (85%+)
Avg. fit score
01 /

The Approach

A job search is a data problem: too many listings, weak signal, and no easy way to compare fit. I treated it like building a platform — source, normalize, score, track, act.

1

Source

Pull roles from a live jobs data lake (1M+ listings) and Indeed, filtered to my level, geography, and comp floor.

2

Score

A transparent rules engine rates every role 0–100 for fit against my background, weighting strengths and flagging gaps in plain language.

3

Track

Everything lands in a colour-coded tracker — status, source, comp, and the fit rationale — so nothing slips.

4

Act

Tailored résumés and cover letters per target, applications driven to the review step, and network mined for warm intros.

PythonSQLJobs Data LakeRules-based scoringGoogle SheetsAWS S3 + CloudFront
// src/pipeline.py — the loop, end to end
02 /

Tracker & Stats

Live view of the pipeline. In public mode, companies collapse to their industry and compensation is hidden — the shape of the search stays, the sensitive detail doesn't.

Where I'm applying

Applications by industry / market

Fit-score spread

How well roles matched my background
Pipeline — roles
CompanyRoleCompStatusFit
// src/score.py — the fit-scoring engine (excerpt)
03 /

Search Automation

Instead of scrolling job boards, I query them. Roles come back structured, get de-duped against what I've already seen, and are ranked before I ever read one.

What it does

Fans out searches across multiple angles — by title, by seniority, by stack — so one blind spot doesn't hide a good role. Filters to Director/VP/Principal level, remote or DC-metro, and a comp floor, then sorts by freshness and fit.

semantic + keyword searchseniority filterssalary floordedupefreshness sort

Why it works

Recruiters optimize for keywords; candidates should optimize for fit. Scoring every role the same way removes wishful thinking and surfaces the stretch-but-real opportunities I'd have scrolled past.

The same discipline I bring to building data platforms, pointed at my own career.

// src/search.py — multi-angle sourcing + ranking
04 /

Networking Analysis

The best roles come through people. I take an official export of my network, group it by employer, and cross-reference against companies that are actively hiring for roles that fit — then reach out where there's a warm path.

1

Export, don't scrape

Use the platform's own data-export (ToS-friendly) — names, employers, titles, connection dates.

2

Group & enrich

Roll connections up by employer and tag each with industry and seniority.

3

Cross-reference hiring

Join against live openings — surface contacts who work somewhere with a role that fits.

4

Warm outreach

Auto-draft short, personalized referral asks — ranked by the contact's seniority and relevance.

// src/networking.py — connections × open roles
05 /

Résumé & Positioning

Same career, sharper story. My title never signaled the platform engineering I was actually doing — so I repositioned to lead with what I build, and tailored a version for each kind of role.

Before
Senior Director (functional title)
Gave no signal of the platform, data, and AI work.
After
Data & AI Platform Leader · Solutions Architect
Leads with the platform & AI work.

What changed

Headline

Led with a platform, AI, and architecture identity — right at the top.

Title

Simplified to Senior Director — function over department.

Summary

Opens on the unified data platform and production AI I built.

Variants

Three tailored résumés — commercial data/AI, cleared solutions architect, and federal — plus per-role cover letters.

3 résumé variantsper-target cover lettersATS-clean
// src/positioning.py — align the story to the target