Files
jobyssey/.claude/skills/job-scraper/search-queries.md
T

128 lines
8.0 KiB
Markdown
Raw Normal View History

# Search Queries for Job Scraper
<!-- Generated by /setup on 2026-08-20 for Prad Nukala. Re-run `/setup --section search` to change. -->
## Installed portal CLIs (primary for `/scrape`)
`/scrape` discovers every portal skill under `.agents/skills/*/SKILL.md` and runs its CLI first. Enabled here:
- **`linkedin-search`** (live, public listings)
- **`freehire-search`** (live, ATS aggregator, tech-focused; use `--region us` / `--country US`)
- **`wellfound-search`** (live, Wellfound startup listings by role + city or remote; page 1 only, so vary role wording: `senior software engineer`, `backend engineer`, `founding engineer`, `blockchain engineer`; results carry compensation ranges, useful for the salary floor)
- **`jobsdb-search`** (local snapshot `documents/postings/jobs.db`, ~87k postings, crypto/fintech/AI-heavy, NYC/SF-dense). **Static snapshot**: recency is relative to `meta.snapshot`, not today, and every hit must be URL-verified live before it is shown. See its SKILL.md.
Danish demo portals (jobindex, jobbank, jobdanmark, jobnet) stay `enabled: false`.
The `site:` query templates in this file are the **WebSearch fallback** for portals without a CLI, company career pages, or when a CLI fails.
**Language scope:** all queries in English. The candidate's other declared language (Telugu) has no job-market relevance for these roles; do not generate Telugu queries. A posting that requires a language other than English as a job condition fails the Language Gate in `04-job-evaluation.md`.
## Search Sites
Primary:
- **linkedin.com/jobs** (filter: United States / New York / San Francisco / Remote); also covered by `linkedin-search` CLI
- **freehire.me**, covered by `freehire-search` CLI
- **documents/postings/jobs.db**, covered by `jobsdb-search` CLI
- **wellfound.com**, covered by `wellfound-search` CLI (`site:wellfound.com` as WebSearch fallback)
- **web3.career**, **cryptocurrencyjobs.co** (WebSearch `site:` fallback; scaffold a CLI with `/add-portal` if they prove productive)
Secondary (company career pages via Google): `site:` searches against the target companies below.
## Target Companies
Monitor directly (career pages, plus `jobsdb-search --company`): Circle, Ellipsis Labs, Mural Pay, Gemini, Coinbase, Privy, Turnkey, Fireblocks, Dynamic, Alchemy, Anchorage Digital, Polymarket, Block, Anthropic. The `jobsdb-search --tier 1` list is the broader target set.
## Query Categories
Queries are grouped by priority and **organized by function, not title**. By default `/scrape` runs Priorities 1-3. Combine each query with location terms (`New York`, `San Francisco`, `Remote`, `United States`) where the portal supports it.
Portal flag translation:
- `linkedin-search`: `--query "<title>" --location "New York, United States"` (and `"San Francisco Bay Area"`, `--remote remote`), `--jobage 14`
- `freehire-search`: `-q "<keyword>" --country US --seniority senior,staff --category backend` (or `--remote remote`), `--jobage 14`
- `wellfound-search`: `-q "<role title>" --location new-york` / `"San Francisco"` / `--remote`, `--jobage 14 --no-description`
- `jobsdb-search`: `-q "<keyword>" --seniority senior,staff_principal --location "New York"` / `"San Francisco"` / `--remote remote,hybrid`, `--jobage 30`; add `--crypto-native` or `--sector crypto,fintech-nc` for Priority 2
### Priority 1: Senior Backend & Protocol Engineering (Staff titles are a stretch, keep but deprioritize)
The strongest and most desired direction: owning backend systems, protocols, and infrastructure in Go/TypeScript at crypto-native, fintech, or AI-infrastructure companies.
Titles: Staff Software Engineer, Senior Backend Engineer, Senior Software Engineer (Go), Protocol Engineer, Blockchain Engineer, Staff Backend Engineer, Senior Platform Engineer, Senior Infrastructure Engineer
```
site:linkedin.com/jobs "staff software engineer" Go New York
site:linkedin.com/jobs "senior backend engineer" Go OR Golang New York OR "San Francisco" OR remote
site:linkedin.com/jobs "protocol engineer" United States
site:linkedin.com/jobs "blockchain engineer" Cosmos OR IBC OR EVM New York OR remote
site:web3.career "backend engineer" Go
site:cryptocurrencyjobs.co "protocol engineer"
```
### Priority 2: Founding Engineer at Early-Stage Startups
Zero-to-one roles where architecture, delivery, and reliability across the stack is the job. Equity-heavy, small team, seed to Series A.
Titles: Founding Engineer, Founding Backend Engineer, Founding Full-Stack Engineer, First Engineer, Technical Co-Founder, Head of Engineering (seed stage)
```
site:linkedin.com/jobs "founding engineer" New York OR "San Francisco" OR remote
site:wellfound.com "founding engineer" backend OR fullstack
site:linkedin.com/jobs "founding backend engineer"
site:linkedin.com/jobs "first engineer" OR "engineer #1" startup
site:ycombinator.com/companies/jobs "founding engineer"
```
### Priority 3: Applied Cryptography, Wallet & Identity Infrastructure
Domain-expertise roles: MPC/threshold signatures, passkeys/WebAuthn, key management, wallet-as-a-service, decentralized identity.
Titles: Cryptography Engineer, Applied Cryptographer, Security Engineer (Cryptography), Wallet Infrastructure Engineer, Key Management Engineer, Identity Engineer
```
site:linkedin.com/jobs "cryptography engineer" United States
site:linkedin.com/jobs "applied cryptography" MPC OR "threshold signatures"
site:linkedin.com/jobs WebAuthn OR passkeys engineer
site:linkedin.com/jobs "wallet infrastructure" engineer
site:cryptocurrencyjobs.co cryptography
```
### Priority 4: Adjacent Roles (wider net)
Roles the profile supports but that are not the primary target: mobile, devrel, solutions engineering, small-team engineering management.
Titles: Senior React Native Engineer, Senior Mobile Engineer, Developer Relations Engineer, Developer Experience Engineer, Solutions Engineer (wallet/custody), Engineering Manager (protocol/platform), Technical Lead
```
site:linkedin.com/jobs "react native" senior engineer New York OR remote
site:linkedin.com/jobs "developer relations engineer" blockchain OR infrastructure
site:linkedin.com/jobs "solutions engineer" wallet OR custody OR passkeys
site:linkedin.com/jobs "engineering manager" protocol OR blockchain New York
```
## Location Filter
- **Ideal:** New York City (any borough; onsite, hybrid, or remote); San Francisco / Bay Area onsite; fully remote (US)
- **Acceptable:** any US city with relocation (candidate is open to relocation); remote-global
- **Borderline:** onsite outside NYC/SF with no relocation support; hybrid requiring more than occasional travel to a non-NYC/SF office
- **Too far:** onsite outside the US; roles requiring non-US work authorization
Candidate is a US citizen; no visa constraints. Available from **mid-to-late September 2026**.
## Hard Filters (beyond location)
- **AI tooling must be allowed.** Drop or flag any posting that prohibits AI-assisted development (Claude Code, Copilot, etc.); this is a deal-breaker, not a preference.
- Target senior / founding-level roles; skip junior, mid, and intern postings unless the title is "Founding Engineer". Staff/Principal postings are kept but flagged as a level stretch (no Staff IC experience).
## Language Filter
Working languages are in CLAUDE.md's Languages table (English native, Telugu). Apply `04-job-evaluation.md`'s Language Gate: a posting requiring a language not declared is excluded; a higher-than-declared level in a declared language is flagged, not excluded.
## Date Filter
Live portals: only jobs posted within the last 14 days, or with an open deadline. `jobsdb-search`: within 30 days of the row's snapshot date, and URL-verified live. If a posting date cannot be determined, include it but flag as "date unknown".
## Adapting Queries
If the user specifies a focus area, select queries from the matching category and also generate 2-3 custom queries for that focus. For example:
- `/scrape founding` -> Priority 2 queries + `jobsdb-search -q "founding" --tier 2`
- `/scrape crypto` -> Priority 3 + `jobsdb-search --crypto-native --seniority senior,staff_principal`
- `/scrape anthropic` -> `jobsdb-search --company Anthropic` + `site:job-boards.greenhouse.io/anthropic`