Originally published at nathanhamlett.com
Most job search advice is anecdotal. "I got hired through LinkedIn!" or "HackerNews Who's Hiring changed my life!" are stories, not data. They reflect one outcome from a search nobody documented systematically.
I took a different approach. I built an autonomous AI agent to manage my job search. It scans sources, scores opportunities, builds application packets, and submits them. After a few months, I have something most job seekers don't: a database.
3,570 opportunities. 73 applications submitted. 16 source integrations. Enough signal to say what's worth your time and what isn't.
The Setup
My agent (which I've written about before) integrates a dozen job sources:
- General aggregators: Jooble, Adzuna, Indeed, The Muse, Arbeitnow
- Niche/specialized boards: CryptoCurrencyJobs, web3.career, HackerNews Who's Hiring
- Telegram channels: @jobstash, @web3hiring, and a few others
- Government: USAJobs
- Applicant tracking system direct scrapes: Lever, Greenhouse, Ashby listings
Every opportunity gets scored 1-10 for fit. Anything above 7.0 moves forward to research and application.
"Applied rate" here means: of all listings from a given source, what percentage actually got an application submitted? It accounts for scoring, verification, ATS issues, and everything in between. It's the only metric that matters.
The Results
Here's the applied rate for every source with at least 20 listings in the database:
| Source | Listings Scanned | Applications | Applied Rate |
|---|---|---|---|
| CryptoCurrencyJobs | 55 | 11 | 20.0% |
| @jobstash (Telegram) | 26 | 2 | 7.7% |
| @web3hiring (Telegram) | 29 | 2 | 6.9% |
| HackerNews | 176 | 7 | 4.0% |
| web3.career | 129 | 5 | 3.9% |
| Adzuna | 915 | 9 | 1.0% |
| USAJobs | 103 | 1 | 1.0% |
| Jooble | 1,342 | 9 | 0.7% |
| Indeed | 38 | 0 | 0.0% |
| The Muse | 36 | 0 | 0.0% |
| Arbeitnow | 69 | 0 | 0.0% |
| Jooble (local) | 169 | 0 | 0.0% |
The spread is brutal. CryptoCurrencyJobs produces 28x better yield than Jooble. The Telegram channels punch above their weight relative to volume.
Jooble and Adzuna together account for 2,257 listings — more than 63% of total scan volume — and produced 18 applications between them. That's 0.8% efficiency after consuming the majority of resources.
Why Niche Boards Dominate
The pattern is consistent with something I suspected but couldn't prove before the data: aggregators waste your time. They scrape the same listings from everywhere, serve them at scale, and the signal-to-noise ratio collapses. Here's why niche boards win:
1. Better fit out of the gate. CryptoCurrencyJobs only lists crypto roles. Every listing is a potential fit. Jooble lists everything — the same search query surfaces cyber security analysts, chemical plant operators, and medical sales reps before it finds community managers.
2. Lower competition. Popular general boards are where every job seeker looks. Niche boards and Telegram channels attract more specialized applicants, but fewer of them. A 20% applied rate might mean the signal is strong and the competition is smaller.
3. Less staleness. General aggregators cache listings. I've applied to roles that were already closed before I found them, confirmed by 404 errors on submit. Niche boards and Telegram channels tend to be more real-time.
The Role Term Signal
The database also surfaced something useful: which words in job titles predict a good fit match.
I ran a simple lift calculation — comparing how often a term appears in titles where I actually applied vs. how often it appears overall. Higher lift = stronger signal.
| Term | Lift |
|---|---|
| "founding" | 10.87x |
| "contract" | 9.17x |
| "ops" | 8.63x |
| "media" | 5.54x |
| "partnerships" | 5.15x |
| "social" | 4.58x |
| "growth" | 4.12x |
"Founding" at 10.87x means I'm disproportionately drawn to founding-team roles — early, high-agency, lower structure. "Contract" at 9.17x reflects that short-term engagements align better with my current situation than a long hiring process.
If you're building a job search system or even just thinking about how to filter manually, these terms are a starting point. Your lift numbers will be different, but the methodology applies.
What I'm Changing
Based on this data, I'm adjusting the scan strategy:
- Reduce Jooble and Adzuna scan volume by 40% and redirect that capacity to better sources. They'll stay in the mix because occasionally they surface something unique, but they won't dominate.
- Add more Telegram channels. The yield is strong and the volume is manageable.
- Build a source-efficiency tracker that updates weekly so drift is visible before it becomes a problem.
- Add blocker routing. 11% of actionable opportunities hit anti-bot walls (Cloudflare, hCaptcha) during submission. Instead of retrying blind, route those to a headed browser queue.
The Underlying Lesson
More input doesn't mean more output. Jooble has 1,342 listings in my database and produced the same number of applications as CryptoCurrencyJobs with 55.
For job seekers without an AI doing this at scale: the math translates. Spending three hours carefully working through HackerNews Who's Hiring and a couple of niche boards for your field will beat spending three hours on Indeed. The surface area looks smaller but the yield is higher and the applications are better.
Data doesn't lie. Job boards do.
I write about operating AI agents, non-traditional career paths, and building systems that work while you sleep. I'm currently available for consulting engagements, contract work, and full-time roles in AI operations, community, and growth. Reach me at nathanhamlett.com.
Top comments (1)
The niche-vs-aggregator finding maps almost 1:1 to what I see in SEO. I run a programmatic financial data site with 100,000+ pages, and the pattern is identical — long-tail, specific queries (individual stock tickers in non-English languages) convert at dramatically higher rates than broad competitive terms, even though the head terms represent the majority of search volume. Your CryptoCurrencyJobs 20% vs Jooble 0.7% is basically our "[ticker] koers" at position 8 vs "[stock analysis]" buried at position 50+.
The lift calculation on job title terms is a really smart application. I use a similar approach to identify which content clusters are worth thickening on my site — looking at the ratio of impressions-to-indexed-pages per topic area to find where Google is actually willing to show the content. The methodology transfers well: terms that lift disproportionately tell you where the system's actual scoring function diverges from your assumptions.
The source-efficiency tracker updating weekly is the part that makes this sustainable rather than a one-time analysis. I built something similar for tracking which search engines index my pages (Google crawls 1.4%, Yandex was at 15% before a recent collapse, Bing somewhere in between) — the weekly cadence catches drift before it compounds. Curious whether you're seeing the Cloudflare anti-bot rate increasing over time, or if it's stable per source?