Status line from Alex, 2026-10-19; the rest from resume v12 · 2026-10-13.
Quick answers
What the first message usually asks, answered from the resume and from Alex’s own dated statements. Each answer names its source; the technical terms are explained under the career numbers.
Where are you, and would you move?
Based in Seattle. Alex, 2026-10-19
Open to Washington, California, and New York. Alex, 2026-10-19
Remote or in an office?
Willing to be 4-5 days in office. Alex, 2026-10-18
The current role is remote. resume v12, Coinbase record
Do you need visa sponsorship?
US citizen, so no visa sponsorship needed. follows from “US citizen” (Alex, 2026-10-19)
When could you start?
Available to start on offer. Alex, 2026-10-19
What do you do now?
Senior Data Engineer at Coinbase, since Mar 2024, remote. resume v12, Coinbase record
Senior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. resume v12, summary
How many years of experience?
10+ years in data roles. resume v12, summary
What do you work with?
Pipelines: dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD resume v12, SKILLS
Warehouses: Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs resume v12, SKILLS
University of Washington, Bachelor of Arts, Economics; Minor, Entrepreneurship, Sep 2011 – Dec 2015. GPA 3.5, Dean's List Scholar. resume v12, EDUCATION
What is the project on the resume?
KVMACHINES, independent project (Jan 2026 – Present): Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check. resume v12, KVMACHINES bullet 1
Career numbers
A plain headline for each number, then the resume bullet it is quoted from, verbatim; the bullets are in the Resume view.
$18.9BCrypto assets covered by the data model Alex led at Coinbase“a dimensional model across $18.9B in crypto assets on six networks”resume v12, Coinbase bullet 1
1,600+Files converted into LLM-ready metadata by Claude API automation at Coinbase“converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata”resume v12, Coinbase bullet 2
20+Pipeline health and data quality measures watched by the monitoring platform Alex built at Coinbase“monitors 20+ pipeline health and data quality KPIs”resume v12, Coinbase bullet 3
$450M+Weekly ad revenue covered by the reporting pipelines Alex built and owned at Amazon“$450M+ in weekly ad revenue, zero SLA misses in 18 months”resume v12, Amazon (Sponsored Products) bullet 1
$115MProjected revenue corrected after Alex found and fixed a revenue-pipeline error at TikTok“correcting projected revenue by $115M (+10%)”resume v12, TikTok bullet 2
$55M a monthMonthly recurring billing handled by the pipeline Alex owned at Amazon Web Services“$55M a month in recurring billing, zero disputes”resume v12, Amazon Web Services bullet 2
+$65MMAnnualized revenue from what Alex’s A/B test launched at Amazon“the A/B test that launched Thematic placement sourcing (+$65MM annualized)”resume v12, Amazon (Sponsored Products) bullet 2
What the technical terms mean (12)
staking data model
staking is locking crypto assets into a blockchain network to help run it, for rewards; a data model is the layout of the tables that record it
semantic layer
the agreed definitions of business metrics and terms that sit between the raw tables and whoever queries them, so every tool counts the same way
LLM-ready
prepared so a large language model (the kind of AI behind Claude) can read it and use it
observability platform
monitoring for data pipelines: whether the data arrives on time, complete and correct
data contracts
written agreements on what a dataset contains and promises, between the team that produces it and the teams that use it
freshness SLAs
an SLA is a service-level agreement, a promised standard; a freshness SLA promises how up to date the data is kept
Claude session per department
Claude is Anthropic’s AI assistant; a session is one running copy of it, here one for each department of the business
Thematic placement sourcing
the name of what the A/B test launched; the resume does not define it further
A/B test
a controlled experiment: two versions shown to different groups and their results compared
slowly changing dimensions
warehouse tables that keep the history of an attribute as it changes, so an old record is read with the values of its time
dimensional model
a warehouse layout with one central table of events or amounts and lookup tables around it (dates, products, customers), the usual shape for reporting
KPIs
key performance indicators: the measures a team tracks
resume v12 · 2026-10-13 · text verbatim, except the status line (Alex, 2026-10-19)
Copy the resume as plain text, for your applicant-tracking system
resume_text
ALEX ZHOUK
Seattle, WA | https://www.linkedin.com/in/alexzhouk/ | https://kvkeys.com/#sql | https://kvmachines.com
US citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.
SUMMARY
Senior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).
SKILLS
Pipelines: dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD
Warehouses: Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs
Languages: SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R
Reporting: Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards
AI-assisted engineering: Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata
Cloud and tooling: AWS, Azure, Docker, GitHub Actions
EXPERIENCE
Senior Data Engineer
Coinbase | Remote | Mar 2024 - Present
- Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.
- Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.
- Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.
Senior Data Engineer
Machina Labs | Chatsworth, CA | Feb 2023 - Mar 2024
- First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.
- Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.
Data Scientist, Creator Monetization
TikTok | Los Angeles, CA | Dec 2021 - Feb 2023
- Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.
- Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.
Business Intelligence Engineer II, Sponsored Products Advertising
Amazon | Seattle, WA | May 2020 - Dec 2021
- Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.
- Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.
Business Intelligence Engineer II, Private Brands
Amazon | Seattle, WA | Nov 2018 - May 2020
- Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.
- Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.
Custom Pricing Analyst
Amazon Web Services | Seattle, WA | Oct 2017 - Nov 2018
- Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.
- Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.
Business Analyst (contract)
Amazon | Seattle, WA | Dec 2016 - Oct 2017
- Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.
Compensation Data Analyst (contract)
Microsoft | Redmond, WA | Sep 2016 - Dec 2016
- R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.
Financial Analyst
Booking.com | Bellevue, WA | Jul 2015 - Sep 2015
- Consolidated invoice reporting in SQL and Excel across two offices.
Financial Analyst, Retail
Amazon | Seattle, WA | Sep 2014 - Mar 2015
- Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.
PROJECTS
KVMACHINES, independent project
kvkeys.com/#sql, kvmachines.com | Seattle, WA | Jan 2026 - Present
- Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.
- Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.
- Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.
- Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.
EDUCATION
University of Washington | Seattle, WA
Bachelor of Arts, Economics; Minor, Entrepreneurship | Sep 2011 - Dec 2015
GPA 3.5, Dean's List Scholar
US citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.
Senior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).
Experience
Senior Data Engineer
Coinbase · Remote
Mar 2024 – Present
Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.
Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.
Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.
Senior Data Engineer
Machina Labs · Chatsworth, CA
Feb 2023 – Mar 2024
First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.
Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.
Data Scientist, Creator Monetization
TikTok · Los Angeles, CA
Dec 2021 – Feb 2023
Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.
Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.
Business Intelligence Engineer II, Sponsored Products Advertising
Amazon · Seattle, WA
May 2020 – Dec 2021
Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.
Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.
Business Intelligence Engineer II, Private Brands
Amazon · Seattle, WA
Nov 2018 – May 2020
Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.
Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.
Custom Pricing Analyst
Amazon Web Services · Seattle, WA
Oct 2017 – Nov 2018
Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.
Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.
Business Analyst (contract)
Amazon · Seattle, WA
Dec 2016 – Oct 2017
Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.
Compensation Data Analyst (contract)
Microsoft · Redmond, WA
Sep 2016 – Dec 2016
R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.
Financial Analyst
Booking.com · Bellevue, WA
Jul 2015 – Sep 2015
Consolidated invoice reporting in SQL and Excel across two offices.
Financial Analyst, Retail
Amazon · Seattle, WA
Sep 2014 – Mar 2015
Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.
Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.
Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.
Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.
Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.
Skills
Pipelines
dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD
Warehouses
Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs
Languages
SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R
Reporting
Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards
AI-assisted engineering
Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata
Cloud and tooling
AWS, Azure, Docker, GitHub Actions
Education
University of Washington
Bachelor of Arts, Economics; Minor, Entrepreneurship · Seattle, WA
Sep 2011 – Dec 2015
GPA 3.5, Dean's List Scholar
How this works
This page is one resume record, two public datasets (postings fetched from three job boards for the bench, and one probe per board for the company index) and what is computed from them, in order. Each step names its inputs and outputs, and each is checkable on this page: the formats, the bench and the SQL console show their own evidence.
1 One resume record
Input
A text file of facts, one key -> value line each, one block per record: the candidate, every role, the project, the skills, the education. Resume v12 of 2026-10-13.
Output
resume.json: 1 candidate, 10 roles, 1 project, 6 skill rows and 1 education row, text verbatim. The email address and phone number are left out of the record on purpose: LinkedIn is the one contact.
Check it
The Resume view is that record rendered; the career numbers on the overview are checked at build time against the bullets they quote. Resume →
2 Three ATS formats, generated from the vendor docs
Input
The record, plus the public API docs of each applicant-tracking system: the Greenhouse Job Board API (applications, jobs, education lookups), the Lever Postings API README and the Ashby public job-posting API page.
Output
5 payloads from one generator: a Greenhouse application and the resume as a Greenhouse job post, a Lever application and the resume as a Lever posting, the resume as an Ashby job. Each block names the doc section every field follows and the record field it comes from.
Check it
The observed comparison next to the Lever block: what Lever’s own resume parser extracted from the PDF on 2026-10-18 next to the generated value (two links came back as http without www or the trailing slash, the third link was dropped, the phone came back as digits only). Ashby’s form field paths were read from a live posting on 2026-10-19. ATS formats →
3 The bench
Input
Postings from three public boards, fetched as JSON: Anthropic on Greenhouse, OpenAI on Ashby, Spotify on Lever. The resume as plain text: the record’s own resume_text (the build checks the two are equal, the contact line and the status line aside). A vocabulary of 64 terms with labels (dbt, Airflow, data modeling, “N+ years”, and so on). Adapters that map each vendor’s section headings to the parser’s five sections (about, responsibility, must, nice, stop); text before the first mapped heading is marked intro and skipped; the heading map is shown on every role.
Output
11 roles scored, 5 left out with the reason. Per role: a 0–1 score (the mean of the bullet scores weighted must 1 / responsibility 0.75 / nice 0.5), counts of covered, partial and missing requirements, the must-haves covered, the terms hit and missed, and up to six excerpts (missing must-haves first), each with the terms it matched.
Check it
Every number is on the Bench view with its posting linked; the method card lists what the method does not measure. Bench →
4 The company index
Input
A registry of 13,750 board slugs (carried over from earlier crawls of the same vendors, plus Alex’s own list of AI companies), and the public board APIs of Greenhouse, Lever and Ashby, probed once per slug on 2026-10-19: does the board answer, and with how many postings.
Output
13,750 slugs with the ATS, the company name recorded in the registry (not the board’s answer), liveness (live, empty, dead) as of that capture, open reqs on the live boards (293,994), the probe day, and a flag for sandbox, test and demo slugs (25).
Check it
The Company index view: the method in prose, search, filters and the summary by ATS. The first 50 rows are in the page; the full index (boards.json, served beside the page) loads when the view opens. Company index →
5 SQL in the browser
Input
schema.sql (19 tables, each commented) and one JSON file per table (<table>.json, served beside the page), written by the build from the same data the other views render. PGlite 0.5.8, Postgres compiled to WebAssembly, served beside the page as three files (12.4 MB).
Output
A console with 10 preset queries: career numbers with their sources, the experience timeline, the ATS field maps, bench scores and gaps, boards by ATS and liveness, a slug lookup.
Check it
What loads when: no engine file and no table file is requested until a click. The full company index (boards.json, served beside the page) loads when the Company index view opens; the engine and every table file load when Start Postgres is pressed. The build checks that no such request sits outside those two handlers. SQL console →
What to change to make it yours
The owner’s facts live in a few named constants and three data files; everything else on the page is derived from them.
Constants in the generator.STATUS and STATUS_SOURCE (the status line, one sentence per chip, and who said it when), OPEN_TO (the states that line names), OFFICE (the office-days statement and its date), WITHHELD (the placeholders that stand in for the email, phone and resume file in every payload), RESUME_VERSION and SITE_URL.
Constants in the renderer. The KPIS list: for each career number its verbatim fragment, the bullet it lives in and a plain headline (a fragment that is not in its bullet drops the tile and fails the build); the GLOSSARY of plain-words definitions; the BENCH_PLAN dates.
Data files.resume.kv → resume.json through tools/prepare-data.mjs --resume; boards.jsonl → boards.json (--boards); the bench’s output → bench.json (--bench).
What is readable here, and what is not. The renderer (render.js) and the SQL console (console.js) are inline in this page’s source, as served. The generator, the build, the data preparation and the bench scripts are not published on this page: it describes them and shows their outputs.
What you need to run this yourself
Your resume as a record. A plain text file of key -> value facts, blank line between records, so one script can build every format from it and a check can prove a number is quoted, not retyped. Keep the email address, phone number and street address out of the record, so no output can leak them.
The vendor docs. Each applicant-tracking system documents its job-board or postings API publicly (the ATS formats view links the pages this page follows). Download the pages you follow and name the section next to every field you fill, so a reviewer can trace a field without you.
Node 20 or later. The generator, the renderer and the build are plain Node scripts with no packages. The build is one script run: it rebuilds the page and fails on any check that does not pass (an email address or phone number, a missing source, a number that is not verbatim, an engine file requested too early). Those scripts are not on this page; what you would write is described above.
Python 3 for the bench. A parser that finds the sections of a posting by heading, a vocabulary file of the terms you care about, an evaluator that scores each requirement bullet, and two adapters that turn Ashby and Lever postings into the shape the parser reads. The postings come from the boards’ public JSON endpoints; no key is needed to read them.
The board index. The same three public APIs answer for any slug, so a list of slugs plus one probe each gives you liveness and open reqs. Record the capture date and show it; boards move.
PGlite. The npm package ships Postgres as WebAssembly: two .wasm files and a filesystem bundle. Serve them beside the page, verify their checksums at build time, and load them only on a click. The page imports the small JavaScript wrapper from a CDN and nothing else.
A static host that serves byte ranges. This page runs on one Cloudflare Worker with static assets (a few kilobytes of code: cache headers, byte ranges, security headers). The same HTML, with the database and engine files published beside it, runs as a claude.ai artifact.
Honest limits
The bench measures vocabulary overlap, with one person’s 64-term list, against eleven postings at three companies. It says which words a posting uses that the resume does not; it does not say whether the candidate can do the job.
Postings move. The Anthropic roles were scored on 2026-10-13 and not re-run; by 2026-10-19, 1 of the 4 roles scored then (“Data Engineer, Safeguards”) had closed on the board, and 1 posting on the board (“Recruiting Analytics Data Engineer”) was never scored. The OpenAI and Spotify postings were fetched and scored on 2026-10-19. The capture dates are on every card and the index says liveness is as of 2026-10-19, not today.
The generated payloads are shaped by the docs, not accepted by a live board: the request lines marked illustrative use a board name that does not exist, and a candidate has no API key for a Greenhouse board (the hosted form is the submission path).
Lever’s parser was observed on two hosted forms with one PDF; Ashby’s resume autofill was never run, so there is no parsed result to compare for it.
There is no email address, phone number or resume file on this page, not even inside the payloads: those fields show placeholders such as {email}. The SQL console runs in memory and sends nothing anywhere.
One record, three ATS formats
For engineers: the resume record mapped into the payloads three applicant-tracking systems document. Recruiters can skip this view; the resume itself is in the Resume view.
The resume record, mapped by one generator into the payload each applicant-tracking system documents: five outputs for three vendors. Two are application payloads (what a careers page or the hosted form sends; the API key on the request is the employer’s), three are posting shapes (the resume in the JSON each board publishes jobs in, to compare field names). Field names follow the vendor docs named and linked on each block; values marked “observed” were read from live forms and parsers, with the date. The URLs marked illustrative use alexzhouk as a board name that does not exist.
Greenhouse
Greenhouse Job Board API: submit an application
What a careers page or the hosted application form sends to the employer’s board for this candidate. The credential on the request is the employer’s API key, never the candidate’s. Here: HTTP Basic with the employer’s Job Board API key.
POST https://boards-api.greenhouse.io/v1/boards/{board_token}/jobs/{id} · application/json· HTTP Basic, the employer's Job Board API key (a candidate has none: the hosted form is the submission path)
greenhouse.application
{
"first_name": "Alex",
"last_name": "Zhouk",
"email": "{email}",
"phone": "{phone}",
"country_short_name": "US",
"resume_text": "ALEX ZHOUK\nSeattle, WA | https://www.linkedin.com/in/alexzhouk/ | https://kvkeys.com/#sql | https://kvmachines.com\nUS citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.\n\nSUMMARY\nSenior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).\n\nSKILLS\nPipelines: dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD\nWarehouses: Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs\nLanguages: SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R\nReporting: Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards\nAI-assisted engineering: Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata\nCloud and tooling: AWS, Azure, Docker, GitHub Actions\n\nEXPERIENCE\n\nSenior Data Engineer\nCoinbase | Remote | Mar 2024 - Present\n- Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.\n- Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.\n- Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.\n\nSenior Data Engineer\nMachina Labs | Chatsworth, CA | Feb 2023 - Mar 2024\n- First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.\n- Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.\n\nData Scientist, Creator Monetization\nTikTok | Los Angeles, CA | Dec 2021 - Feb 2023\n- Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.\n- Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.\n\nBusiness Intelligence Engineer II, Sponsored Products Advertising\nAmazon | Seattle, WA | May 2020 - Dec 2021\n- Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.\n- Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.\n\nBusiness Intelligence Engineer II, Private Brands\nAmazon | Seattle, WA | Nov 2018 - May 2020\n- Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.\n- Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.\n\nCustom Pricing Analyst\nAmazon Web Services | Seattle, WA | Oct 2017 - Nov 2018\n- Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.\n- Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.\n\nBusiness Analyst (contract)\nAmazon | Seattle, WA | Dec 2016 - Oct 2017\n- Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.\n\nCompensation Data Analyst (contract)\nMicrosoft | Redmond, WA | Sep 2016 - Dec 2016\n- R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.\n\nFinancial Analyst\nBooking.com | Bellevue, WA | Jul 2015 - Sep 2015\n- Consolidated invoice reporting in SQL and Excel across two offices.\n\nFinancial Analyst, Retail\nAmazon | Seattle, WA | Sep 2014 - Mar 2015\n- Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.\n\nPROJECTS\n\nKVMACHINES, independent project\nkvkeys.com/#sql, kvmachines.com | Seattle, WA | Jan 2026 - Present\n- Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.\n- Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.\n- Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.\n- Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.\n\nEDUCATION\nUniversity of Washington | Seattle, WA\nBachelor of Arts, Economics; Minor, Entrepreneurship | Sep 2011 - Dec 2015\nGPA 3.5, Dean's List Scholar\n",
"employments": [
{
"company_name": "Coinbase",
"title": "Senior Data Engineer",
"start_date": {
"month": "3",
"year": "2024"
},
"current": "true"
},
{
"company_name": "Machina Labs",
"title": "Senior Data Engineer",
"start_date": {
"month": "2",
"year": "2023"
},
"end_date": {
"month": "3",
"year": "2024"
},
"current": "false"
},
{
"company_name": "TikTok",
"title": "Data Scientist, Creator Monetization",
"start_date": {
"month": "12",
"year": "2021"
},
"end_date": {
"month": "2",
"year": "2023"
},
"current": "false"
},
{
"company_name": "Amazon",
"title": "Business Intelligence Engineer II, Sponsored Products Advertising",
"start_date": {
"month": "5",
"year": "2020"
},
"end_date": {
"month": "12",
"year": "2021"
},
"current": "false"
},
{
"company_name": "Amazon",
"title": "Business Intelligence Engineer II, Private Brands",
"start_date": {
"month": "11",
"year": "2018"
},
"end_date": {
"month": "5",
"year": "2020"
},
"current": "false"
},
{
"company_name": "Amazon Web Services",
"title": "Custom Pricing Analyst",
"start_date": {
"month": "10",
"year": "2017"
},
"end_date": {
"month": "11",
"year": "2018"
},
"current": "false"
},
{
"company_name": "Amazon",
"title": "Business Analyst (contract)",
"start_date": {
"month": "12",
"year": "2016"
},
"end_date": {
"month": "10",
"year": "2017"
},
"current": "false"
},
{
"company_name": "Microsoft",
"title": "Compensation Data Analyst (contract)",
"start_date": {
"month": "9",
"year": "2016"
},
"end_date": {
"month": "12",
"year": "2016"
},
"current": "false"
},
{
"company_name": "Booking.com",
"title": "Financial Analyst",
"start_date": {
"month": "7",
"year": "2015"
},
"end_date": {
"month": "9",
"year": "2015"
},
"current": "false"
},
{
"company_name": "Amazon",
"title": "Financial Analyst, Retail",
"start_date": {
"month": "9",
"year": "2014"
},
"end_date": {
"month": "3",
"year": "2015"
},
"current": "false"
}
],
"educations": [
{
"school_name_id": {
"lookup": "GET /v1/boards/{board_token}/education/schools?term=University%20of%20Washington",
"pick": "items[].id where text is \"University of Washington\"",
"doc": "_educations.md"
},
"degree_id": {
"lookup": "GET /v1/boards/{board_token}/education/degrees?term=Bachelor's%20Degree",
"pick": "items[].id where text is \"Bachelor's Degree\"",
"doc": "_educations.md"
},
"discipline_id": {
"lookup": "GET /v1/boards/{board_token}/education/disciplines?term=Economics",
"pick": "items[].id where text is \"Economics\"",
"doc": "_educations.md"
},
"start_date": {
"month": "9",
"year": "2011"
},
"end_date": {
"month": "12",
"year": "2015"
}
}
]
}
email and phone: withheld on this page; contact is LinkedIn
resumeText(record): the ATS text, without email or phone
employments[]
_applications.md › Request Parameters › employments: company_name, title, start_date{month,year}, current "true"/"false", end_date when current is false
experience[] in order; the project is not an employment
GET https://boards-api.greenhouse.io/v1/boards/alexzhouk/jobs/{job_id}?questions=true · application/json (response)· illustrative: alexzhouk is not a Greenhouse board token
greenhouse.job
{
"id": null,
"title": "Senior Data Engineer",
"company_name": "Alex Zhouk",
"first_published": "2026-10-13T00:00:00Z",
"updated_at": "2026-10-13T00:00:00Z",
"application_deadline": null,
"requisition_id": "resume v12",
"location": {
"name": "Seattle, WA"
},
"content": "<p>Senior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).</p><h3>Skills</h3><ul><li><strong>Pipelines:</strong> dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD</li><li><strong>Warehouses:</strong> Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs</li><li><strong>Languages:</strong> SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R</li><li><strong>Reporting:</strong> Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards</li><li><strong>AI-assisted engineering:</strong> Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata</li><li><strong>Cloud and tooling:</strong> AWS, Azure, Docker, GitHub Actions</li></ul><h3>Experience</h3><ul><li><strong>Senior Data Engineer</strong>, Coinbase (Remote, Mar 2024 - Present)<ul><li>Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.</li><li>Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.</li><li>Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.</li></ul></li><li><strong>Senior Data Engineer</strong>, Machina Labs (Chatsworth, CA, Feb 2023 - Mar 2024)<ul><li>First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.</li><li>Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.</li></ul></li><li><strong>Data Scientist, Creator Monetization</strong>, TikTok (Los Angeles, CA, Dec 2021 - Feb 2023)<ul><li>Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.</li><li>Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.</li></ul></li><li><strong>Business Intelligence Engineer II, Sponsored Products Advertising</strong>, Amazon (Seattle, WA, May 2020 - Dec 2021)<ul><li>Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.</li><li>Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.</li></ul></li><li><strong>Business Intelligence Engineer II, Private Brands</strong>, Amazon (Seattle, WA, Nov 2018 - May 2020)<ul><li>Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.</li><li>Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.</li></ul></li><li><strong>Custom Pricing Analyst</strong>, Amazon Web Services (Seattle, WA, Oct 2017 - Nov 2018)<ul><li>Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.</li><li>Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.</li></ul></li><li><strong>Business Analyst (contract)</strong>, Amazon (Seattle, WA, Dec 2016 - Oct 2017)<ul><li>Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.</li></ul></li><li><strong>Compensation Data Analyst (contract)</strong>, Microsoft (Redmond, WA, Sep 2016 - Dec 2016)<ul><li>R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.</li></ul></li><li><strong>Financial Analyst</strong>, Booking.com (Bellevue, WA, Jul 2015 - Sep 2015)<ul><li>Consolidated invoice reporting in SQL and Excel across two offices.</li></ul></li><li><strong>Financial Analyst, Retail</strong>, Amazon (Seattle, WA, Sep 2014 - Mar 2015)<ul><li>Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.</li></ul></li></ul><h3>Projects</h3><ul><li><strong>KVMACHINES, independent project</strong>, kvkeys.com/#sql, kvmachines.com (Seattle, WA, Jan 2026 - Present)<ul><li>Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.</li><li>Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.</li><li>Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.</li><li>Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.</li></ul></li></ul><h3>Education</h3><ul><li><strong>University of Washington</strong>, Seattle, WA: Bachelor of Arts, Economics; Minor, Entrepreneurship (Sep 2011 - Dec 2015); GPA 3.5, Dean's List Scholar</li></ul><p>US citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.</p>",
"absolute_url": "https://alexzhouk.com/",
"language": "en",
"internal_job_id": null,
"metadata": [
{
"id": null,
"name": "Status",
"value_type": "short_text",
"value": "US citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer."
},
{
"id": null,
"name": "LinkedIn",
"value_type": "url",
"value": "https://www.linkedin.com/in/alexzhouk/"
},
{
"id": null,
"name": "kvkeys.com/#sql",
"value_type": "url",
"value": "https://kvkeys.com/#sql"
},
{
"id": null,
"name": "kvmachines.com",
"value_type": "url",
"value": "https://kvmachines.com"
}
],
"questions": [
{
"required": true,
"label": "First Name",
"fields": [
{
"name": "first_name",
"type": "input_text"
}
]
},
{
"required": true,
"label": "Last Name",
"fields": [
{
"name": "last_name",
"type": "input_text"
}
]
},
{
"required": true,
"label": "Email",
"fields": [
{
"name": "email",
"type": "input_text"
}
]
},
{
"required": false,
"label": "Phone",
"fields": [
{
"name": "phone",
"type": "input_text"
}
]
},
{
"required": true,
"label": "Resume",
"fields": [
{
"name": "resume",
"type": "input_file"
},
{
"name": "resume_text",
"type": "textarea"
}
]
}
]
}
Which doc section each field follows (11 rows)
Field
Follows
From the record
id, internal_job_id
_jobs.md › Retrieve a job (ids are assigned by Greenhouse)
left out: no compensation on this page; not applicable
Lever
Lever Postings API: apply to a job posting
What a careers page or the hosted application form sends to the employer’s board for this candidate. The credential on the request is the employer’s API key, never the candidate’s. Here: {APIKEY} in the URL is the employer’s Postings API key.
POST https://api.lever.co/v0/postings/{SITE}/{POSTING-ID}?key={APIKEY} · application/json (the resume file needs multipart/form-data)· {APIKEY} is the employer's Postings API key (a candidate has none: the hosted form is the submission path)
lever.apply
{
"name": "Alex Zhouk",
"email": "{email}",
"phone": "{phone}",
"org": "Coinbase",
"urls": {
"LinkedIn": "https://www.linkedin.com/in/alexzhouk/",
"Portfolio": "https://kvkeys.com/#sql",
"Other": "https://kvmachines.com"
},
"comments": "US citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer."
}
email, phone and the resume file: withheld on this page; contact is LinkedIn
Which doc section each field follows (8 rows)
Field
Follows
From the record
name
README.md › Apply to a job posting › name (required)
candidate.name
email
README.md › Apply to a job posting › email (required; Lever de-dupes on it)
{email}: withheld on this page; contact is LinkedIn
GET https://api.lever.co/v0/postings/alexzhouk/alexzhouk-resume-v12?mode=json · application/json (response)· illustrative: alexzhouk is not a Lever site
lever.posting
{
"id": "alexzhouk-resume-v12",
"text": "Senior Data Engineer",
"categories": {
"location": "Seattle, WA",
"commitment": null,
"team": null,
"department": null,
"allLocations": [
"Seattle, WA",
"Washington",
"California",
"New York"
]
},
"country": "US",
"opening": "<p>Senior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).</p>",
"openingPlain": "Senior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).",
"description": "<p>Senior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).</p><h3>Skills</h3><ul><li><strong>Pipelines:</strong> dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD</li><li><strong>Warehouses:</strong> Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs</li><li><strong>Languages:</strong> SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R</li><li><strong>Reporting:</strong> Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards</li><li><strong>AI-assisted engineering:</strong> Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata</li><li><strong>Cloud and tooling:</strong> AWS, Azure, Docker, GitHub Actions</li></ul><h3>Experience</h3><ul><li><strong>Senior Data Engineer</strong>, Coinbase (Remote, Mar 2024 - Present)<ul><li>Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.</li><li>Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.</li><li>Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.</li></ul></li><li><strong>Senior Data Engineer</strong>, Machina Labs (Chatsworth, CA, Feb 2023 - Mar 2024)<ul><li>First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.</li><li>Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.</li></ul></li><li><strong>Data Scientist, Creator Monetization</strong>, TikTok (Los Angeles, CA, Dec 2021 - Feb 2023)<ul><li>Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.</li><li>Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.</li></ul></li><li><strong>Business Intelligence Engineer II, Sponsored Products Advertising</strong>, Amazon (Seattle, WA, May 2020 - Dec 2021)<ul><li>Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.</li><li>Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.</li></ul></li><li><strong>Business Intelligence Engineer II, Private Brands</strong>, Amazon (Seattle, WA, Nov 2018 - May 2020)<ul><li>Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.</li><li>Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.</li></ul></li><li><strong>Custom Pricing Analyst</strong>, Amazon Web Services (Seattle, WA, Oct 2017 - Nov 2018)<ul><li>Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.</li><li>Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.</li></ul></li><li><strong>Business Analyst (contract)</strong>, Amazon (Seattle, WA, Dec 2016 - Oct 2017)<ul><li>Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.</li></ul></li><li><strong>Compensation Data Analyst (contract)</strong>, Microsoft (Redmond, WA, Sep 2016 - Dec 2016)<ul><li>R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.</li></ul></li><li><strong>Financial Analyst</strong>, Booking.com (Bellevue, WA, Jul 2015 - Sep 2015)<ul><li>Consolidated invoice reporting in SQL and Excel across two offices.</li></ul></li><li><strong>Financial Analyst, Retail</strong>, Amazon (Seattle, WA, Sep 2014 - Mar 2015)<ul><li>Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.</li></ul></li></ul><h3>Projects</h3><ul><li><strong>KVMACHINES, independent project</strong>, kvkeys.com/#sql, kvmachines.com (Seattle, WA, Jan 2026 - Present)<ul><li>Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.</li><li>Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.</li><li>Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.</li><li>Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.</li></ul></li></ul><h3>Education</h3><ul><li><strong>University of Washington</strong>, Seattle, WA: Bachelor of Arts, Economics; Minor, Entrepreneurship (Sep 2011 - Dec 2015); GPA 3.5, Dean's List Scholar</li></ul>",
"descriptionPlain": "ALEX ZHOUK\nSeattle, WA | https://www.linkedin.com/in/alexzhouk/ | https://kvkeys.com/#sql | https://kvmachines.com\nUS citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.\n\nSUMMARY\nSenior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).\n\nSKILLS\nPipelines: dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD\nWarehouses: Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs\nLanguages: SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R\nReporting: Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards\nAI-assisted engineering: Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata\nCloud and tooling: AWS, Azure, Docker, GitHub Actions\n\nEXPERIENCE\n\nSenior Data Engineer\nCoinbase | Remote | Mar 2024 - Present\n- Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.\n- Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.\n- Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.\n\nSenior Data Engineer\nMachina Labs | Chatsworth, CA | Feb 2023 - Mar 2024\n- First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.\n- Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.\n\nData Scientist, Creator Monetization\nTikTok | Los Angeles, CA | Dec 2021 - Feb 2023\n- Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.\n- Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.\n\nBusiness Intelligence Engineer II, Sponsored Products Advertising\nAmazon | Seattle, WA | May 2020 - Dec 2021\n- Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.\n- Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.\n\nBusiness Intelligence Engineer II, Private Brands\nAmazon | Seattle, WA | Nov 2018 - May 2020\n- Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.\n- Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.\n\nCustom Pricing Analyst\nAmazon Web Services | Seattle, WA | Oct 2017 - Nov 2018\n- Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.\n- Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.\n\nBusiness Analyst (contract)\nAmazon | Seattle, WA | Dec 2016 - Oct 2017\n- Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.\n\nCompensation Data Analyst (contract)\nMicrosoft | Redmond, WA | Sep 2016 - Dec 2016\n- R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.\n\nFinancial Analyst\nBooking.com | Bellevue, WA | Jul 2015 - Sep 2015\n- Consolidated invoice reporting in SQL and Excel across two offices.\n\nFinancial Analyst, Retail\nAmazon | Seattle, WA | Sep 2014 - Mar 2015\n- Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.\n\nPROJECTS\n\nKVMACHINES, independent project\nkvkeys.com/#sql, kvmachines.com | Seattle, WA | Jan 2026 - Present\n- Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.\n- Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.\n- Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.\n- Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.\n\nEDUCATION\nUniversity of Washington | Seattle, WA\nBachelor of Arts, Economics; Minor, Entrepreneurship | Sep 2011 - Dec 2015\nGPA 3.5, Dean's List Scholar\n",
"descriptionBody": "<h3>Skills</h3><ul><li><strong>Pipelines:</strong> dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD</li><li><strong>Warehouses:</strong> Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs</li><li><strong>Languages:</strong> SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R</li><li><strong>Reporting:</strong> Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards</li><li><strong>AI-assisted engineering:</strong> Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata</li><li><strong>Cloud and tooling:</strong> AWS, Azure, Docker, GitHub Actions</li></ul><h3>Experience</h3><ul><li><strong>Senior Data Engineer</strong>, Coinbase (Remote, Mar 2024 - Present)<ul><li>Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.</li><li>Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.</li><li>Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.</li></ul></li><li><strong>Senior Data Engineer</strong>, Machina Labs (Chatsworth, CA, Feb 2023 - Mar 2024)<ul><li>First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.</li><li>Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.</li></ul></li><li><strong>Data Scientist, Creator Monetization</strong>, TikTok (Los Angeles, CA, Dec 2021 - Feb 2023)<ul><li>Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.</li><li>Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.</li></ul></li><li><strong>Business Intelligence Engineer II, Sponsored Products Advertising</strong>, Amazon (Seattle, WA, May 2020 - Dec 2021)<ul><li>Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.</li><li>Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.</li></ul></li><li><strong>Business Intelligence Engineer II, Private Brands</strong>, Amazon (Seattle, WA, Nov 2018 - May 2020)<ul><li>Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.</li><li>Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.</li></ul></li><li><strong>Custom Pricing Analyst</strong>, Amazon Web Services (Seattle, WA, Oct 2017 - Nov 2018)<ul><li>Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.</li><li>Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.</li></ul></li><li><strong>Business Analyst (contract)</strong>, Amazon (Seattle, WA, Dec 2016 - Oct 2017)<ul><li>Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.</li></ul></li><li><strong>Compensation Data Analyst (contract)</strong>, Microsoft (Redmond, WA, Sep 2016 - Dec 2016)<ul><li>R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.</li></ul></li><li><strong>Financial Analyst</strong>, Booking.com (Bellevue, WA, Jul 2015 - Sep 2015)<ul><li>Consolidated invoice reporting in SQL and Excel across two offices.</li></ul></li><li><strong>Financial Analyst, Retail</strong>, Amazon (Seattle, WA, Sep 2014 - Mar 2015)<ul><li>Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.</li></ul></li></ul><h3>Projects</h3><ul><li><strong>KVMACHINES, independent project</strong>, kvkeys.com/#sql, kvmachines.com (Seattle, WA, Jan 2026 - Present)<ul><li>Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.</li><li>Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.</li><li>Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.</li><li>Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.</li></ul></li></ul><h3>Education</h3><ul><li><strong>University of Washington</strong>, Seattle, WA: Bachelor of Arts, Economics; Minor, Entrepreneurship (Sep 2011 - Dec 2015); GPA 3.5, Dean's List Scholar</li></ul>",
"descriptionBodyPlain": "ALEX ZHOUK\nSeattle, WA | https://www.linkedin.com/in/alexzhouk/ | https://kvkeys.com/#sql | https://kvmachines.com\nUS citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.\n\nSUMMARY\nSenior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).\n\nSKILLS\nPipelines: dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD\nWarehouses: Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs\nLanguages: SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R\nReporting: Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards\nAI-assisted engineering: Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata\nCloud and tooling: AWS, Azure, Docker, GitHub Actions\n\nEXPERIENCE\n\nSenior Data Engineer\nCoinbase | Remote | Mar 2024 - Present\n- Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.\n- Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.\n- Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.\n\nSenior Data Engineer\nMachina Labs | Chatsworth, CA | Feb 2023 - Mar 2024\n- First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.\n- Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.\n\nData Scientist, Creator Monetization\nTikTok | Los Angeles, CA | Dec 2021 - Feb 2023\n- Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.\n- Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.\n\nBusiness Intelligence Engineer II, Sponsored Products Advertising\nAmazon | Seattle, WA | May 2020 - Dec 2021\n- Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.\n- Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.\n\nBusiness Intelligence Engineer II, Private Brands\nAmazon | Seattle, WA | Nov 2018 - May 2020\n- Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.\n- Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.\n\nCustom Pricing Analyst\nAmazon Web Services | Seattle, WA | Oct 2017 - Nov 2018\n- Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.\n- Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.\n\nBusiness Analyst (contract)\nAmazon | Seattle, WA | Dec 2016 - Oct 2017\n- Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.\n\nCompensation Data Analyst (contract)\nMicrosoft | Redmond, WA | Sep 2016 - Dec 2016\n- R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.\n\nFinancial Analyst\nBooking.com | Bellevue, WA | Jul 2015 - Sep 2015\n- Consolidated invoice reporting in SQL and Excel across two offices.\n\nFinancial Analyst, Retail\nAmazon | Seattle, WA | Sep 2014 - Mar 2015\n- Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.\n\nPROJECTS\n\nKVMACHINES, independent project\nkvkeys.com/#sql, kvmachines.com | Seattle, WA | Jan 2026 - Present\n- Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.\n- Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.\n- Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.\n- Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.\n\nEDUCATION\nUniversity of Washington | Seattle, WA\nBachelor of Arts, Economics; Minor, Entrepreneurship | Sep 2011 - Dec 2015\nGPA 3.5, Dean's List Scholar\n",
"lists": [
{
"text": "Skills",
"content": "<li><strong>Pipelines:</strong> dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD</li><li><strong>Warehouses:</strong> Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs</li><li><strong>Languages:</strong> SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R</li><li><strong>Reporting:</strong> Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards</li><li><strong>AI-assisted engineering:</strong> Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata</li><li><strong>Cloud and tooling:</strong> AWS, Azure, Docker, GitHub Actions</li>"
},
{
"text": "Experience",
"content": "<li><strong>Senior Data Engineer</strong>, Coinbase (Remote, Mar 2024 - Present)<ul><li>Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.</li><li>Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.</li><li>Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.</li></ul></li><li><strong>Senior Data Engineer</strong>, Machina Labs (Chatsworth, CA, Feb 2023 - Mar 2024)<ul><li>First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.</li><li>Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.</li></ul></li><li><strong>Data Scientist, Creator Monetization</strong>, TikTok (Los Angeles, CA, Dec 2021 - Feb 2023)<ul><li>Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.</li><li>Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.</li></ul></li><li><strong>Business Intelligence Engineer II, Sponsored Products Advertising</strong>, Amazon (Seattle, WA, May 2020 - Dec 2021)<ul><li>Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.</li><li>Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.</li></ul></li><li><strong>Business Intelligence Engineer II, Private Brands</strong>, Amazon (Seattle, WA, Nov 2018 - May 2020)<ul><li>Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.</li><li>Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.</li></ul></li><li><strong>Custom Pricing Analyst</strong>, Amazon Web Services (Seattle, WA, Oct 2017 - Nov 2018)<ul><li>Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.</li><li>Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.</li></ul></li><li><strong>Business Analyst (contract)</strong>, Amazon (Seattle, WA, Dec 2016 - Oct 2017)<ul><li>Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.</li></ul></li><li><strong>Compensation Data Analyst (contract)</strong>, Microsoft (Redmond, WA, Sep 2016 - Dec 2016)<ul><li>R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.</li></ul></li><li><strong>Financial Analyst</strong>, Booking.com (Bellevue, WA, Jul 2015 - Sep 2015)<ul><li>Consolidated invoice reporting in SQL and Excel across two offices.</li></ul></li><li><strong>Financial Analyst, Retail</strong>, Amazon (Seattle, WA, Sep 2014 - Mar 2015)<ul><li>Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.</li></ul></li>"
},
{
"text": "Projects",
"content": "<li><strong>KVMACHINES, independent project</strong>, kvkeys.com/#sql, kvmachines.com (Seattle, WA, Jan 2026 - Present)<ul><li>Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.</li><li>Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.</li><li>Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.</li><li>Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.</li></ul></li>"
},
{
"text": "Education",
"content": "<li><strong>University of Washington</strong>, Seattle, WA: Bachelor of Arts, Economics; Minor, Entrepreneurship (Sep 2011 - Dec 2015); GPA 3.5, Dean's List Scholar</li>"
}
],
"additional": "<p>US citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.</p>",
"additionalPlain": "US citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.",
"hostedUrl": "https://alexzhouk.com/",
"applyUrl": "https://www.linkedin.com/in/alexzhouk/",
"workplaceType": "unspecified"
}
Which doc section each field follows (11 rows)
Field
Follows
From the record
id
README.md › Get a list of job postings › id ("Unique job posting ID")
The resume written in the JSON shape this board publishes its jobs in, so the field names can be compared side by side. Nothing sends it anywhere. The application form after it is what Ashby’s hosted form asks for, as observed on one live posting.
GET https://api.ashbyhq.com/posting-api/job-board/alexzhouk?includeCompensation=false · application/json (response)· illustrative: alexzhouk is not an Ashby job board
ashby.posting
{
"apiVersion": "1",
"jobs": [
{
"title": "Senior Data Engineer",
"location": "Seattle, WA",
"secondaryLocations": [
{
"location": "Washington",
"address": {
"addressRegion": "Washington",
"addressCountry": "USA"
}
},
{
"location": "California",
"address": {
"addressRegion": "California",
"addressCountry": "USA"
}
},
{
"location": "New York",
"address": {
"addressRegion": "New York",
"addressCountry": "USA"
}
}
],
"department": null,
"team": null,
"isListed": true,
"descriptionHtml": "<p>Senior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).</p><h3>Skills</h3><ul><li><strong>Pipelines:</strong> dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD</li><li><strong>Warehouses:</strong> Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs</li><li><strong>Languages:</strong> SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R</li><li><strong>Reporting:</strong> Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards</li><li><strong>AI-assisted engineering:</strong> Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata</li><li><strong>Cloud and tooling:</strong> AWS, Azure, Docker, GitHub Actions</li></ul><h3>Experience</h3><ul><li><strong>Senior Data Engineer</strong>, Coinbase (Remote, Mar 2024 - Present)<ul><li>Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.</li><li>Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.</li><li>Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.</li></ul></li><li><strong>Senior Data Engineer</strong>, Machina Labs (Chatsworth, CA, Feb 2023 - Mar 2024)<ul><li>First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.</li><li>Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.</li></ul></li><li><strong>Data Scientist, Creator Monetization</strong>, TikTok (Los Angeles, CA, Dec 2021 - Feb 2023)<ul><li>Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.</li><li>Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.</li></ul></li><li><strong>Business Intelligence Engineer II, Sponsored Products Advertising</strong>, Amazon (Seattle, WA, May 2020 - Dec 2021)<ul><li>Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.</li><li>Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.</li></ul></li><li><strong>Business Intelligence Engineer II, Private Brands</strong>, Amazon (Seattle, WA, Nov 2018 - May 2020)<ul><li>Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.</li><li>Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.</li></ul></li><li><strong>Custom Pricing Analyst</strong>, Amazon Web Services (Seattle, WA, Oct 2017 - Nov 2018)<ul><li>Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.</li><li>Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.</li></ul></li><li><strong>Business Analyst (contract)</strong>, Amazon (Seattle, WA, Dec 2016 - Oct 2017)<ul><li>Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.</li></ul></li><li><strong>Compensation Data Analyst (contract)</strong>, Microsoft (Redmond, WA, Sep 2016 - Dec 2016)<ul><li>R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.</li></ul></li><li><strong>Financial Analyst</strong>, Booking.com (Bellevue, WA, Jul 2015 - Sep 2015)<ul><li>Consolidated invoice reporting in SQL and Excel across two offices.</li></ul></li><li><strong>Financial Analyst, Retail</strong>, Amazon (Seattle, WA, Sep 2014 - Mar 2015)<ul><li>Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.</li></ul></li></ul><h3>Projects</h3><ul><li><strong>KVMACHINES, independent project</strong>, kvkeys.com/#sql, kvmachines.com (Seattle, WA, Jan 2026 - Present)<ul><li>Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.</li><li>Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.</li><li>Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.</li><li>Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.</li></ul></li></ul><h3>Education</h3><ul><li><strong>University of Washington</strong>, Seattle, WA: Bachelor of Arts, Economics; Minor, Entrepreneurship (Sep 2011 - Dec 2015); GPA 3.5, Dean's List Scholar</li></ul><p>US citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.</p>",
"descriptionPlain": "ALEX ZHOUK\nSeattle, WA | https://www.linkedin.com/in/alexzhouk/ | https://kvkeys.com/#sql | https://kvmachines.com\nUS citizen. Based in Seattle. Open to Washington, California, and New York. Available to start on offer.\n\nSUMMARY\nSenior data engineer at Coinbase on dbt, Airflow and Snowflake: the unified staking data model, a semantic layer made LLM-ready with the Claude API, the observability platform behind 20+ KPIs. Data Engineer titles since 2023 after a Data Scientist role at TikTok and BI and analytics roles at Amazon; 10+ years in data roles. This year, KVMACHINES: an independent project to test whether agents can run a business on Anthropic's products, with a person's signature on every step that changes something (kvkeys.com/#sql).\n\nSKILLS\nPipelines: dbt Core and Cloud, Airflow, Spark and PySpark, Hive, Databricks, AWS Glue and EMR, GitHub Actions CI/CD\nWarehouses: Snowflake, Redshift, Databricks, Azure Data Lake, Postgres; dimensional modeling (star schemas, slowly changing dimensions), semantic layers, data contracts, freshness SLAs and data quality KPIs\nLanguages: SQL, Python (Pandas, PySpark, FastAPI, Streamlit), R\nReporting: Superset, Tableau, Streamlit apps, SQL consoles in the browser (Postgres in the page); executive and cross-functional dashboards\nAI-assisted engineering: Claude Code, the Claude API and MCP connectors for pipeline, schema and CI work, with an independent review session before the merge; LLM-ready dbt metadata\nCloud and tooling: AWS, Azure, Docker, GitHub Actions\n\nEXPERIENCE\n\nSenior Data Engineer\nCoinbase | Remote | Mar 2024 - Present\n- Led the unified staking data model, a dimensional model across $18.9B in crypto assets on six networks, with Product Management, Data Science and leadership, using dbt Core and Cloud, Airflow and Snowflake; executive dashboards in Superset and Tableau.\n- Standardized the semantic layer across Coinbase: Python automation on the Claude API converted 1,600+ dbt, YAML and SQL files into LLM-ready metadata in the company's first data contracts rollout, so LLM-based analytics tools query trusted, documented datasets directly.\n- Built the org-wide observability platform in Streamlit (Python, SQL) that monitors 20+ pipeline health and data quality KPIs, with automated source freshness tests and schema validation across the warehouse, cutting the time to detect a failure.\n\nSenior Data Engineer\nMachina Labs | Chatsworth, CA | Feb 2023 - Mar 2024\n- First data engineering hire: built a robotics startup's Databricks warehouse from the ground up, PySpark ELT pipelines on Azure that bring robot telemetry, Salesforce and GraphQL feeds into a medallion lake for 40+ stakeholders, with CI/CD through GitHub Actions.\n- Built the FastAPI service over the Databricks APIs that ended direct cluster access for three internal teams; shipped the invoice management app and a bidirectional pricing calculator (Streamlit, PySpark, Docker on Azure) with write-back for Finance and Sales.\n\nData Scientist, Creator Monetization\nTikTok | Los Angeles, CA | Dec 2021 - Feb 2023\n- Owned the Creator Monetization data stack end to end: 15+ production tables with dimensional modeling and 50+ Apache Hive SQL pipelines behind dashboards and cross-team analytics, with data contracts between event producers and downstream consumers.\n- Found and fixed a systematic error in the Branded Content revenue pipeline through SQL and lineage review, correcting projected revenue by $115M (+10%); built the Instacart add-to-cart ETL and reporting with anomaly detection, alerting and source freshness SLAs.\n\nBusiness Intelligence Engineer II, Sponsored Products Advertising\nAmazon | Seattle, WA | May 2020 - Dec 2021\n- Built and owned four Redshift ETL pipelines (80+ tasks) that publish the Weekly Business Review for the Targeting, Optimization, Recommendation and Budget teams: $450M+ in weekly ad revenue, zero SLA misses in 18 months; seven Tableau dashboards.\n- Owned the A/B test that launched Thematic placement sourcing (+$65MM annualized) and identified $8MM more in annualized revenue; standardized data models adopted across four teams.\n\nBusiness Intelligence Engineer II, Private Brands\nAmazon | Seattle, WA | Nov 2018 - May 2020\n- Automated product metrics in Redshift for the Accelerator program across 11 countries ($800M, 800% year over year), with slowly changing dimension tables for product attribute history; built the placement-level sales dashboard that steered marketing spend.\n- Traced sudden sales dips to bad actors ($300k opportunity cost) and shipped a real-time monitoring pipeline with data quality alerting and the takedown dashboard.\n\nCustom Pricing Analyst\nAmazon Web Services | Seattle, WA | Oct 2017 - Nov 2018\n- Designed and built the Enterprise Support analytical warehouse in Redshift (10M+ rows), a star-schema dimensional model that replaced manual billing workflows.\n- Owned the monthly billing pipeline for every AWS Enterprise Support customer: $55M a month in recurring billing, zero disputes; led two projects that added $1M in monthly AWS revenue.\n\nBusiness Analyst (contract)\nAmazon | Seattle, WA | Dec 2016 - Oct 2017\n- Built the Redshift pipelines and dashboards for contract-worker onboarding across 40+ countries and set the data governance standards for the HR system integrations; SQL, R and Python tooling for job-code mapping of the global contingent workforce.\n\nCompensation Data Analyst (contract)\nMicrosoft | Redmond, WA | Sep 2016 - Dec 2016\n- R scripts that automated the manual revenue adjustment and bulk territory processes (60+ hours saved a month); quarterly audits of revenue, territories and quota.\n\nFinancial Analyst\nBooking.com | Bellevue, WA | Jul 2015 - Sep 2015\n- Consolidated invoice reporting in SQL and Excel across two offices.\n\nFinancial Analyst, Retail\nAmazon | Seattle, WA | Sep 2014 - Mar 2015\n- Optimized the SQL and automated the refresh of 20 Excel reports behind the Canada Retail weekly business review; customer returns and free replacements analyzed by reason code.\n\nPROJECTS\n\nKVMACHINES, independent project\nkvkeys.com/#sql, kvmachines.com | Seattle, WA | Jan 2026 - Present\n- Built to test whether agents can run a business on Anthropic's products: one Claude session per department with its own key, memory store and routines; a person's signature on every step that changes something; every output a record people and programs can check.\n- Designed the kvkeys data model: every connector, skill and version of the department plugins in one Postgres schema (818 entities, 351 skills, 420 versions), replayed from history, every table and most columns commented, a 20-step CI gate before any merge.\n- Shipped kvkeys.com/#sql, Postgres running in the browser as the self-serve SQL console over that schema; built the jobs dataset behind this application: 293,891 postings from 13,750 Greenhouse, Lever and Ashby boards joined to the BLS occupation and employment tables.\n- Agents open the pull requests and a separate session reviews them before the merge, under rules I set: 685 merged across 39 repositories from 2 to 13 October 2026.\n\nEDUCATION\nUniversity of Washington | Seattle, WA\nBachelor of Arts, Economics; Minor, Entrepreneurship | Sep 2011 - Dec 2015\nGPA 3.5, Dean's List Scholar\n",
"publishedAt": "2026-10-13T00:00:00.000+00:00",
"address": {
"postalAddress": {
"addressLocality": "Seattle",
"addressRegion": "Washington",
"addressCountry": "USA"
}
},
"jobUrl": "https://alexzhouk.com/",
"applyUrl": "https://www.linkedin.com/in/alexzhouk/"
}
]
}
email, phone and the resume file in the observed form: withheld on this page; contact is LinkedIn
not in page.md: applicationForm of a live Ashby job posting (the public job-posting API, non-user GraphQL)
system field paths observed 2026-10-19 on a Wealth.com posting (the posting’s own URL was not recorded); Ashby's resume autofill was never run, so there is no parsed result to compare
Application form field paths observed 2026-10-19
What Ashby’s hosted application form asks a candidate for: the system fields every form has, plus per-form fields. The values are this record’s answers; the form sends them to the employer, never to this page.
applicationForm of a live Ashby job posting (the public job-posting API, non-user GraphQL). Read from a Wealth.com posting on 2026-10-19 (the posting’s own URL was not recorded; its board is in the company index: jobs.ashbyhq.com/wealth-com). Ashby's resume autofill was never run, so there is no parsed result to compare.
ashby.applicationForm (observed)
{
"label": "observed",
"when": "2026-10-19",
"where": "applicationForm of a live Ashby job posting (the public job-posting API, non-user GraphQL)",
"note": "the value key is this record's answer for each field; isRequired and isNullable are set per form and are not reproduced here",
"sections": [
{
"title": null,
"fieldEntries": [
{
"isRequired": null,
"field": {
"path": "_systemfield_name",
"title": "Name",
"type": "String",
"isNullable": null
},
"value": "Alex Zhouk"
},
{
"isRequired": null,
"field": {
"path": "_systemfield_email",
"title": "Email",
"type": "Email",
"isNullable": null
},
"value": "{email}"
},
{
"isRequired": null,
"field": {
"path": "_systemfield_location",
"title": "Location",
"type": "Location",
"isNullable": null
},
"value": "Seattle, Washington, United States"
},
{
"isRequired": null,
"field": {
"path": "_systemfield_resume",
"title": "Resume",
"type": "File",
"isNullable": null
},
"value": "{resume file}"
},
{
"isRequired": null,
"field": {
"path": "{per-form UUID}",
"title": "Phone",
"type": "Phone",
"isNullable": null
},
"value": "{phone}"
}
]
}
]
}
Bench
For engineers: the resume scored against eleven public postings by one vocabulary method, with the method’s limits. Recruiters can skip this view.
the resume scored against data-engineering postings on three boards
One card per company, 11 roles. Score bars share one 0–1 scale; the strip under each bar splits the posting’s requirements into covered, partial and missing. Gaps are shown as gaps, and every excerpt says which vocabulary terms made it count.
covered partial missing · generated 2026-10-19
Resume input: v12 (Alex_Zhouk_Resume_ATS.txt), the record’s own plain text (the Resume view shows it as resume_text); the build checks that the two are equal, the contact line and the status line aside.
Each requirement bullet scores the share of the vocabulary terms it names that the resume shows (an "N+ years" ask counts as a term, met by the dated data titles), a bullet naming no term scores by stemmed word overlap instead (covered at 50%, partial at 25%), and the role score is the mean of the bullet scores weighted by section.
What it does not measure
The resume was not scored blind against Anthropic: versions 5 to 12 were each scored against the Anthropic postings with this evaluator while the resume was being revised, so the three Anthropic scores are not an independent test. The OpenAI and Spotify roles were scored once, on 2026-10-19, after the resume was final.
It scores vocabulary, not ability: a requirement bullet is covered when the resume names the terms the bullet names. A bullet that names no term falls back to stemmed word overlap (covered at half the words shared, partial at a quarter).
The vocabulary has 64 terms, chosen by one person; a posting that asks in other words scores low for the wrong reason, and a resume that happens to name the terms scores high for the wrong reason.
A named technology counts as covered when a broader term matches it: a bullet asking for GCP and Kubernetes is covered by the term “cloud platform”, which other clouds on the resume satisfy, and a bullet asking for Java backend services names no term at all, so it was covered on shared words alone. The terms each excerpt matched are printed under it so the reason is visible.
Years are not compared the way a reader would: only the first “N+ years” ask in a bullet is read, and it is checked against the years in data, analytics and BI titles; a second ask in the same bullet (8+ years of software engineering) is never compared, and the field an ask names is not checked.
Soft lines are scored like skills: “a passion for the mission” and “a bias for action” are vocabulary terms with a word pattern for the posting and one for the resume, so a match there is a match of words, not of character.
Three companies, eleven roles, one resume version: a sample, not a market. Roles were picked by a title filter (data or analytics engineering, individual contributors only); management and program roles are listed as left out.
Postings move. The Anthropic roles were scored on 2026-10-13 and not re-run; by 2026-10-19, 1 of the 4 roles scored then (“Data Engineer, Safeguards”) had closed on the board, and 1 posting on the board (“Recruiting Analytics Data Engineer”) was never scored. The OpenAI and Spotify postings were fetched and scored on 2026-10-19.
Vendor headings are mapped to the parser’s five sections by hand (the heading maps on each role). Text before the first mapped heading (an “About the team” block, shown as intro) is skipped, and a heading the map does not know is dropped from scoring and recorded as unmapped.
The score is a weighted mean of bullet scores (must 1, responsibility 0.75, nice 0.5), so a posting with many responsibility bullets and one hard must-have can score well while missing the must-have. The must-have count sits next to every score for that reason.
CoveredAI to scale the workAirflowbias for actionbuilding a function from the ground upcanonical datasetsclarity in ambiguitydashboards and reportingdata architecturedata modelingdata productsdata quality and integritydbtend-to-end ownershipETL/ELT pipelinesGitHub and version controlmetrics and KPIspartnering across teamsproduct metricsPythonreliability and error handlingscaleself-serve analyticsshaping roadmapsSLAs and timely deliverySQLthe missionusage logs and events
GapsHex
headings: About the role → about · Responsibilities → responsibility · You may be a good fit if you have → must · Strong candidates may also have → nice · The annual compensation range for this role is listed below. → stop
coveredmustExpertise building multi-step ETL jobs with tools like dbt, plus experience with workflow tools like Airflow and version control through…matched terms: Airflow, dbt, ETL/ELT pipelines, GitHub and version controlposting
coveredmustExpertise in SQL and Python for turning data into accurate, clean data modelsmatched terms: data modeling, data quality and integrity, Python, SQLposting
coveredmustSignificant experience as a Data Engineer or in a similar Data Science & Analytics role, ideally partnering with Product leads to build…matched terms: partnering across teams, metrics and KPIs, product metricsposting
coveredmustExperience using AI to scale your own productivity and your team's without lowering the quality of the workmatched terms: AI to scale the work, scaleposting
coveredmustA passion for Anthropic's mission of building helpful, honest and harmless AImatched terms: the missionposting
coveredmustA bias for action, and a sense of when "good enough" beats perfectmatched terms: bias for actionposting
Covered5+ yearsAirflowbias for actionbilling and paymentsbuilding a function from the ground upcanonical datasetsclarity in ambiguitydashboards and reportingdata architecturedata modelingdata productsdata quality and integritydbtend-to-end ownershipETL/ELT pipelinesfinance and revenue operationsGitHub and version controlintegrating sourcesmetrics and KPIsmonitoring and alertingpartnering across teamsPythonreconciliationself-serve analyticsshaping roadmapsSLAs and timely deliverySQLthe missionusage logs and events
GapsHexon-call and data operations
headings: About the role → about · Responsibilities: → responsibility · You may be a good fit if you have: → must · Strong candidates may also have: → nice · The annual compensation range for this role is listed below. → stop
coveredmustExpertise in SQL and Python, and in building multi-step data pipelines with tools like dbtmatched terms: dbt, ETL/ELT pipelines, Python, SQLposting
coveredmustExperience with workflow orchestration tools like Airflow, and version control with GitHubmatched terms: Airflow, GitHub and version controlposting
coveredmustFamiliarity with billing concepts such as invoicing, payments, credits, refunds and subscriptions, and experience working with data from…matched terms: billing and payments, integrating sourcesposting
coveredmust5+ years of experience as a Data Engineer, Analytics Engineer or in a similar rolematched terms: 5+ yearsposting
coveredmustA bias for action and urgency, without letting perfect be the enemy of the effectivematched terms: bias for actionposting
coveredmustA full-stack mindset: you do what it takes to solve a problem end to end, even when it goes beyond the original scopematched terms: end-to-end ownershipposting
Covered5+ yearsa cloud warehouseAirflowBI tools (Looker, Tableau, Metabase, Superset)bias for actionbilling and paymentsbuilding a function from the ground upcanonical datasetsclarity in ambiguitydashboards and reportingdata modelingdata productsdata quality and integritydbtend-to-end ownershipETL/ELT pipelinesfinance and revenue operationsGitHub and version controlintegrating sourcespartnering across teamsPythonquote-to-cash (CPQ, contracts, ERP)reliability and error handlingSalesforcescaleself-serve analyticsshaping roadmapsSLAs and timely deliverySQLthe mission
GapsHex
headings: About the Role → about · Responsibilities → responsibility · You might be a good fit if you have → must · The annual compensation range for this role is listed below. → stop
coveredmustExpertise in building multi-step ETL jobs, building robust data models through tooling like dbt; proficiency with workflow management…matched terms: Airflow, data modeling, dbt, ETL/ELT pipelines, reliability and error handling, GitHub and version controlposting
coveredmustHands-on experience modeling Salesforce data and at least one adjacent quote-to-cash system: CPQ, contract lifecycle management, billing…matched terms: billing and payments, quote-to-cash (CPQ, contracts, ERP), data modeling, Salesforceposting
coveredmustExpertise in SQL and Python to transform data into accurate, clean data models.matched terms: data modeling, data quality and integrity, Python, SQLposting
coveredmust5+ years of experience as a Data Engineer, Analytics Engineer or in a similar Data Science & Analytics role, ideally partnering with GTM…matched terms: partnering across teams, finance and revenue operations, 5+ yearsposting
coveredmustA passion for the company's mission of building helpful, honest, and harmless AI.matched terms: the missionposting
coveredmustA bias for action and urgency, not letting perfect be the enemy of the effective.matched terms: bias for actionposting
Left out (2)
5424111008 Recruiting Analytics Data Engineer — not in the v12 evaluation of 2026-10-13 (v12-four-roles.json scores Product, Billing & Payments, GTM and Safeguards); the evaluation was not re-run for this bench
5240422008 Data Engineer, Safeguards — scored 0.900 in the v12 evaluation of 2026-10-13, but the posting was closed on the Greenhouse board by 2026-10-19 (the board API returns 404)
Covered3+ yearsa cloud warehouseAirflowcanonical datasetsdata architectureETL/ELT pipelinesfinance and revenue operationsintegrating sourcesmetrics and KPIsperformance and optimizationproduct metricsPythonreliability and error handlingSpark
Gapsprivacy and compliance
headings: About the team → intro (text before the first section heading: skipped, not scored) · About the role: → about · In this role, you will: → responsibility · You might thrive in this role if you: → must · paragraph: This role is exclusively based in our San Francisco HQ. Some of our roles are also locate… → stop
missingmustExperience with distributed processing technologies and frameworks, such as Hadoop, Flink and distributed storage systems (e.g., HDFS, S3).no vocabulary term in this bullet: too few shared wordsposting
coveredmustExpertise with any of ETL schedulers such as Airflow, Dagster, Prefect or similar frameworks.matched terms: Airflow, ETL/ELT pipelinesposting
coveredmustSolid understanding of Spark and ability to write, debug and optimize Spark code.matched terms: performance and optimization, Sparkposting
coveredmustHave 3+ years of experience as a data engineer and 8+ years of any software engineering experience(including data engineering).matched terms: 3+ yearsposting
coveredmustProficiency in at least one programming language commonly used within Data Engineering, such as Python, Scala, or Java.matched terms: Pythonposting
coveredresponsibilityDevelop canonical datasets to track key product metrics including user growth, engagement, and revenue.matched terms: canonical datasets, metrics and KPIs, product metricsposting
Covered3+ yearsa cloud warehouseAirflowcanonical datasetsdata architectureETL/ELT pipelinesfinance and revenue operationsintegrating sourcesmetrics and KPIsperformance and optimizationproduct metricsPythonreliability and error handlingSpark
Gapsprivacy and compliance
headings: About the Team → intro (text before the first section heading: skipped, not scored) · About the role: → about · In this role, you will: → responsibility · You might thrive in this role if you: → must · paragraph: This role is based in Bellevue. We use a hybrid work model and value in-person collaborat… → stop
missingmustExperience with distributed processing technologies and frameworks, such as Hadoop, Flink and distributed storage systems (e.g., HDFS, S3).no vocabulary term in this bullet: too few shared wordsposting
coveredmustExpertise with any of ETL schedulers such as Airflow, Dagster, Prefect or similar frameworks.matched terms: Airflow, ETL/ELT pipelinesposting
coveredmustSolid understanding of Spark and ability to write, debug and optimize Spark code.matched terms: performance and optimization, Sparkposting
coveredmustHave 3+ years of experience as a data engineer and 8+ years of any software engineering experience(including data engineering).matched terms: 3+ yearsposting
coveredmustProficiency in at least one programming language commonly used within Data Engineering, such as Python, Scala, or Java.matched terms: Pythonposting
coveredresponsibilityDevelop canonical datasets to track key product metrics including user growth, engagement, and revenue.matched terms: canonical datasets, metrics and KPIs, product metricsposting
Covered10+ yearsAI to scale the workBI tools (Looker, Tableau, Metabase, Superset)bias for actiondashboards and reportingdata modelingdata productsdocumentationETL/ELT pipelinesfinance and revenue operationsintegrating sourcesmetrics and KPIspartnering across teamsPythonscaleself-serve analyticsSQL
Gapsnone
headings: About the Role → about · In This Role, You Will → responsibility · You Might Thrive in This Role If You → must · About OpenAI → stop
missingmustCan independently structure and own ambiguous, high-impact business problems from initial framing through recommendation and execution.no vocabulary term in this bullet: too few shared wordsposting
missingmustBring exceptional attention to detail and a strong commitment to accuracy.no vocabulary term in this bullet: too few shared wordsposting
coveredmustHave deep SQL expertise and extensive experience working with large datasets and designing ETL workflows.matched terms: ETL/ELT pipelines, SQLposting
coveredmustHave experience with BI tools such as Tableau or Looker and know how to enable effective self-service analytics.matched terms: BI tools (Looker, Tableau, Metabase, Superset), self-serve analyticsposting
coveredmustHave 10+ years of experience in a relevant data role within fast-moving, results-oriented organizations.matched terms: 10+ yearsposting
coveredmustAre highly autonomous, resourceful, and creative when navigating technical, operational, and stakeholder constraints.matched terms: partnering across teamsposting
Covered4+ yearsclarity in ambiguitypartnering across teamsperformance and optimizationreliability and error handlingscale
Gapson-call and data operations
headings: About the Team → intro (text before the first section heading: skipped, not scored) · About the Role → about · In this role, you will: → responsibility · You might thrive in this role if you: → must · paragraph: This role is exclusively based in our San Francisco HQ. We offer relocation assistance to… → stop
missingmustHave an intrinsic desire to learn and fill in missing skills, and an equally strong talent for sharing learnings clearly and concisely…no vocabulary term in this bullet: too few shared wordsposting
coveredmustTake pride in building and operating scalable, reliable, secure systemsmatched terms: reliability and error handling, scaleposting
coveredmustHave 4+ years in data infrastructure engineering ORmatched terms: 4+ yearsposting
coveredmustHave 4+ years in infrastructure engineering with a strong interest in datamatched terms: 4+ yearsposting
coveredmustAre comfortable with ambiguity and rapid changematched terms: clarity in ambiguityposting
coveredresponsibilityEnsure our data platform can scale by orders of magnitude while remaining reliable and efficientmatched terms: reliability and error handling, scale, performance and optimizationposting
Left out (2)
acbf80cd-20a7-47fe-aaf9-3e9224d1570c Data Engineering Manager, Growth & Revenue — management role (Data Engineering Manager); the bench scores individual-contributor data roles only
c0c70d7e-c450-4ca4-842a-dbc5e643c048 Technical Program Manager, Storage & Data Infrastructure — program-management role (Technical Program Manager); the bench scores individual-contributor data roles only
CoveredCI and testsclarity in ambiguitydata architecturedata modelingexperiments and statisticspartnering across teamsreliability and error handlingscaleSparkSQL
GapsBigQuery
headings: description (Lever field) → about · What You'll Do → responsibility · Who You Are → must · Where You'll Be → stop · additional (Lever field) → stop
missingmustYou are an experienced Data Engineer, and proficient in backend development using Java.no vocabulary term in this bullet: too few shared wordsposting
missingmustYou are familiar with DevOps practices, cloud infrastructure, containerized applications, and Kubernetes fundamentals.no vocabulary term in this bullet: too few shared wordsposting
coveredmustYou have experience with JVM-based data processing frameworks such as Flink, Beam, Dataflow, or Spark.matched terms: Sparkposting
coveredmustYou have experience with data modeling and schema design.matched terms: data modelingposting
coveredmustYou care about high-quality code and engineering practices such as continuous delivery and automated testing.matched terms: CI and testsposting
coveredmustYou value experimentation, iterative development, and collaborative software development practices.matched terms: experiments and statisticsposting
Covered5+ yearsAI to scale the workcommunicating with non-technical readersend-to-end ownershipML model monitoring and evaluationpartnering across teamsperformance and optimizationPythonreliability and error handlingscale
Gapson-call and data operations
headings: description (Lever field) → about · What You Will Do → responsibility · Who You Are → must · Where You’ll Be → stop · additional (Lever field) → stop
missingmustYou have deep expertise in either backend or data engineering and are comfortable working across both disciplinesno vocabulary term in this bullet: too few shared wordsposting
missingmustYou’re comfortable operating in an environment where backend, data, ML infrastructure, and AI increasingly overlapno vocabulary term in this bullet: too few shared wordsposting
missingmustYou’re able to participate in a shared on-call rotationterms not on the resume: on-call and data operationsposting
coveredmustExperience with ML infrastructure, AI/LLM systems, agents, model evaluation, or integrating model APIs at scale is a plusmatched terms: AI to scale the work, scale, ML model monitoring and evaluationposting
coveredmustYou communicate effectively and enjoy collaborating with engineering, product, and technical stakeholdersmatched terms: communicating with non-technical readers, partnering across teamsposting
coveredmustYou have 5+ years of relevant engineering experience, with strong experience in backend and/or data engineeringmatched terms: 5+ yearsposting
Covereda cloud warehousecloud platformcommunicating with non-technical readersdata productsdata quality and integrityend-to-end ownershipETL/ELT pipelinesgovernance and lineagereliability and error handlingSnowflakeSparkSQLusage logs and events
GapsBigQueryon-call and data operations
headings: description (Lever field) → about · What You'll Do → responsibility · Who You Are → must · Where You'll Be → stop · additional (Lever field) → stop
coveredmustYou have a working understanding of data engineering concepts such as orchestration, metadata management, data quality, governance and…matched terms: governance and lineage, data quality and integrityposting
coveredmustYou are a strong communicator and collaborator who enjoys working across teams, and you're comfortable in a dynamic platform environment…matched terms: communicating with non-technical readersposting
coveredmustYou have solid experience building and running backend services and APIs in production with Java, and you care about API design…no vocabulary term in this bullet: covered on shared words aloneposting
coveredresponsibilityBuild Data Pipelines: Develop and run the batch and streaming pipelines that keep our metadata current, processing platform events and…matched terms: governance and lineage, data products, ETL/ELT pipelines, usage logs and eventsposting
coveredresponsibilityBuild and Evolve Core Services: Design, build and operate the backend services and APIs behind our data catalog, lineage and publishing…matched terms: governance and lineage, reliability and error handlingposting
coveredresponsibilityOwn Projects End to End: Turn what the teams using our platform need into technical designs, drive them through delivery and rollout, and…matched terms: end-to-end ownershipposting
Covereda cloud warehousecloud platformcommunicating with non-technical readersETL/ELT pipelinesmonitoring and alertingreconciliationscaleSnowflakeSpark
GapsBigQueryon-call and data operations
headings: description (Lever field) → about · What You'll Do → responsibility · Who You Are → must · Where You'll Be → stop · additional (Lever field) → stop
coveredmustYou're comfortable on GCP and Kubernetes. You can read kubectl output, reason about IAM and quotas, and work with CRDs and operators. You…matched terms: cloud platformposting
coveredmustYou communicate clearly in writing and work well asynchronously across US and EU time zones.matched terms: communicating with non-technical readersposting
coveredresponsibilityBuild and evolve the lakehouse: Help build the foundations that let data workflows read and write Iceberg tables directly, from this…matched terms: a cloud warehouseposting
coveredresponsibilityDrive adoption: Help migrate data pipelines from across Spotify onto the new stack, making the move as painless as possible through…matched terms: ETL/ELT pipelinesposting
Left out (1)
abcc8b41-7553-4054-b5eb-8d3e49e00e25 Engineering Manager - Data Platform — management role (Engineering Manager); the bench scores individual-contributor data roles only
Structural gapsBigQueryon-call and data operations
source: spotify.json
Company index
For engineers: the job-board index behind the bench and the postings dataset, with how it was collected. Recruiters can skip this view.
captured 2026-10-19 from the public board APIs
Every company job-board slug in the registry behind the postings dataset, probed once on Greenhouse, Lever and Ashby: 13,750 boards, 293,994 open reqs on the live ones. Per-slug liveness and open_reqs are as of the 2026-10-19 pull, not today. How the index was made is under the summary.
ATS
live
dead
empty
total
greenhouse
4,577
865
690
6,132
lever
1,792
1,154
386
3,332
ashby
2,866
1,049
371
4,286
all
9,235
3,068
1,447
13,750
25 slugs flagged as sandbox, test or demo by /sandbox|\btest(ing)?\b|\bdemo\b/i on slug or company. Source: the 13,750 Greenhouse, Lever and Ashby slugs behind the jobs dataset of resume v12 (KVMACHINES bullet 3: 293,891 postings as of 2026-09-28/29), each probed again on 2026-10-19. The whole index: db/boards.json (columnar JSON; decodeBoards() in this page’s source reads it).
How the index was made
Where the slugs came from
The registry the pull asked again: 13,750 (ATS, slug) pairs, first seen between 2026-07-28 and 2026-09-29. 9,688 from an earlier capture’s dataset (dated 2026-09-22), 2,994 found by a slug resolver, 1,058 migrated from an earlier list, 10 from Alex’s own list of AI companies (checked by hand on 2026-09-27): 13,750 in all.
What was asked per slug
One public request per board, no key: Greenhouse GET https://boards-api.greenhouse.io/v1/boards/{slug}/jobs?content=true; Lever GET https://api.lever.co/v0/postings/{slug}?mode=json; Ashby GET https://api.ashbyhq.com/posting-api/job-board/{slug}?includeCompensation=true. At most 10 requests a second to Greenhouse, 3 to Lever and 5 to Ashby, 32 boards in flight; a 429 or 5xx answer was retried up to four times with backoff. No request was conditional: every board answered with its full list.
What live, empty and dead mean
Live: the board answered 200 with one or more postings, and open reqs is their count. Empty: 200 with none. Dead: 404. Any other answer counts as an error, not as dead, and its board is pulled again; in this pull every board answered 200 or 404.
When
One pull in 9 chunks, from 2026-10-20 02:56 UTC to 03:40 UTC (the evening of 2026-10-19 in Pacific time, hence the 2026-10-19 label). Every row’s probed day is that day, dead boards included: it is the day of the probe, not the day the board was last seen alive. The previous capture of the same slugs, 2026-09-28/29, counted 293,891 postings: the figure on the resume.
The company column
The name is the registry’s, not the board’s answer: it came with the slug from the earlier capture (from Alex’s list for its 10 boards) and the probe does not update it; where the earlier capture took its names from is not recorded in the sources read for this page. So 519 of the 3,068 dead boards still carry a name, 343 live boards have none (shown blank), and a wrong registry name stays wrong: OpenAI’s Ashby board is recorded as “Open Company”.
The first 50 rows are below; the full index (13,750 rows) loads when this view opens.
13,750 of 13,750 boards · 9,235 live · 3,068 dead · 1,447 empty · 25 flagged · 293,994 open reqs on live boards
50 rows a page · captured 2026-10-19 · liveness as of that capture, not today · the company name is the registry’s, the probed day is the pull’s (see above).
SQL · Postgres in your browser
For engineers: Postgres in the browser over the tables behind this page. Recruiters can skip this view.
PGlite 0.5.8 runs Postgres as WebAssembly on this page. Press Start Postgres and it downloads the engine (12.4 MB, once per visit; no engine or table file is requested before that click), creates the 19 tables below from schema.sql and fills them with the 14,202 rows behind every other view: the resume, the five ATS payloads and their field maps, the bench and the company index. Queries run in memory; nothing leaves the browser.
-- alexzhouk.com: the tables behind the page, loaded into PGlite (Postgres in the browser) from db/<table>.json.
-- Every row is derived at build time from data/resume.json (resume v12, 2026-10-13), the generator's five ATS
-- outputs, data/bench.json and data/boards.json (pulled 2026-10-19). build.mjs checks that every table here
-- has a db/<table>.json with these columns in this order. Nothing on this page writes back.
create table candidate (
id text primary key,
name text not null,
first_name text not null,
last_name text not null,
headline text not null,
city text not null,
country text not null,
status_line text not null,
summary text not null,
resume_version text not null,
resume_date date not null
);
comment on table candidate is 'One row: the header of the resume record (resume v12, 2026-10-13). No email address or phone number: LinkedIn (the links table) is the one contact.';
comment on column candidate.headline is 'The current title, taken from the first experience row.';
comment on column candidate.country is 'ISO 3166-1 alpha-2.';
comment on column candidate.status_line is 'Work authorization, location and start, as Alex stated them on 2026-10-19 (this replaces the v12 status line).';
create table links (
candidate_id text not null references candidate(id),
ord int not null,
label text not null,
url text not null,
primary key (candidate_id, ord)
);
comment on table links is 'The links on the resume header, in order.';
create table experience (
id text primary key,
ord int not null,
company text not null,
title text not null,
location text not null,
start_month text not null,
end_month text,
current boolean not null
);
comment on table experience is 'One row per role, most recent first (ord 1).';
comment on column experience.start_month is 'YYYY-MM.';
comment on column experience.end_month is 'YYYY-MM, or null while current.';
create table projects (
id text primary key,
ord int not null,
title text not null,
sites text not null,
location text not null,
start_month text not null,
end_month text,
current boolean not null
);
comment on table projects is 'Independent projects on the resume.';
comment on column projects.sites is 'The sites the project names, comma separated.';
create table bullets (
kind text not null check (kind in ('experience', 'project')),
parent_id text not null,
ord int not null,
text text not null,
primary key (kind, parent_id, ord)
);
comment on table bullets is 'Every resume bullet, verbatim, under its experience or project row.';
create table skills (
id text primary key,
ord int not null,
label text not null,
value text not null
);
comment on table skills is 'The SKILLS rows of the resume, in order.';
create table education (
id text primary key,
ord int not null,
school text not null,
degree text not null,
location text not null,
start_month text not null,
end_month text not null,
note text,
greenhouse_degree text,
greenhouse_discipline text
);
comment on table education is 'The education rows of the resume record (resume v12), one per school.';
comment on column education.greenhouse_degree is 'The lookup term for the Greenhouse education endpoints (ids differ per board).';
create table career_numbers (
ord int primary key,
value text not null,
unit text,
fragment text not null,
kind text not null,
parent_id text not null,
bullet_ord int not null,
source text not null,
on_overview boolean not null
);
comment on table career_numbers is 'The career numbers quoted from the resume bullets; each fragment occurs verbatim in the bullet it names. on_overview marks the ones shown as tiles on the overview.';
comment on column career_numbers.fragment is 'The bullet text the number is quoted from.';
comment on column career_numbers.on_overview is 'True for the overview tiles; the postings count is kept off the overview and shown on the resume and the engineer views only.';
create table ats_formats (
ats text not null,
format text primary key,
title text not null,
doc text not null,
method text not null,
url text not null,
content_type text,
note text,
auth text,
payload jsonb not null
);
comment on table ats_formats is 'The five outputs the generator builds from the record: one per vendor format, with its request line and payload.';
comment on column ats_formats.doc is 'The vendor doc the output follows.';
comment on column ats_formats.note is 'Set when the URL is illustrative (alexzhouk is not a board token).';
create table ats_fields (
ats text not null,
format text not null references ats_formats(format),
ord int not null,
field text not null,
value jsonb,
doc text not null,
source text not null,
primary key (format, ord)
);
comment on table ats_fields is 'Which doc section each payload field follows and which record field it comes from.';
comment on column ats_fields.value is 'The payload value at that path, when the path is a single key; null for composite rows and left-out fields.';
comment on column ats_fields.source is 'The record field, constant or rule the value comes from.';
create table lever_parsed (
ord int primary key,
field text not null,
generated text,
parsed text,
note text not null,
observed date not null,
observed_in text not null
);
comment on table lever_parsed is 'What Lever''s resume parser extracted from the v12 PDF (observed on two hosted forms) next to the generated value.';
comment on column lever_parsed.observed_in is 'Where the parsed values were read.';
create table bench_method (
evaluator text not null,
terms int not null,
weight_must numeric not null,
weight_responsibility numeric not null,
weight_nice numeric not null,
note text not null,
generated timestamptz not null,
resume text not null
);
comment on table bench_method is 'How the bench scores a posting: the evaluator, the vocabulary size and the section weights.';
create table bench_companies (
company text primary key,
ats text not null,
board text not null,
board_url text,
evaluated date not null,
fetched date,
source text,
note text
);
comment on table bench_companies is 'One row per company bench: the board, when its postings were fetched and when the resume was scored.';
create table bench_roles (
id text primary key,
company text not null references bench_companies(company),
ord int not null,
title text not null,
location text not null,
url text,
score numeric(4,3) not null,
requirements int not null,
covered int not null,
partial int not null,
missing int not null,
must int not null,
must_covered int not null
);
comment on table bench_roles is 'One row per scored posting; the score is the section-weighted mean of its requirement bullets, 0 to 1.';
create table bench_terms (
company text not null,
role_id text,
term text not null,
status text not null check (status in ('covered', 'gap', 'structural'))
);
comment on table bench_terms is 'Vocabulary terms per role: covered by the resume, a gap, or (role_id null) a structural gap the evaluator flags for the whole company.';
create table bench_headings (
role_id text not null references bench_roles(id),
ord int not null,
heading text not null,
section text not null,
primary key (role_id, ord)
);
comment on table bench_headings is 'How each posting''s own headings were mapped to the parser''s sections (about, responsibility, must, nice, stop).';
create table bench_excerpts (
role_id text not null references bench_roles(id),
ord int not null,
section text not null,
status text not null,
text text not null,
terms text,
primary key (role_id, ord)
);
comment on table bench_excerpts is 'Up to six requirement bullets per role: the missing must-haves first, then the best covered ones; cut to 140 characters.';
create table bench_left_out (
company text not null references bench_companies(company),
id text not null,
title text,
reason text not null,
primary key (company, id)
);
comment on table bench_left_out is 'Postings on the board that were not scored, and why.';
create table boards (
ats text not null,
slug text not null,
company text,
liveness text not null check (liveness in ('live', 'dead', 'empty')),
open_reqs int,
last_seen date not null,
flagged boolean not null,
primary key (ats, slug)
);
comment on table boards is 'Every company job-board slug in the registry behind the postings dataset, probed again on the public Greenhouse, Lever and Ashby board APIs in one pull on the evening of 2026-10-19 Pacific (2026-10-20 02:56 to 03:40 UTC); the Company index view states the method.';
comment on column boards.company is 'The registry''s name for the slug, carried over from earlier captures; not the board''s answer, and not updated by the probe, so a dead board can carry a name and a wrong name stays wrong. Null when the registry had none.';
comment on column boards.liveness is 'As of the 2026-10-19 pull: live (HTTP 200 with one or more postings), empty (200 with none) or dead (404).';
comment on column boards.open_reqs is 'Postings in the board''s answer in the 2026-10-19 pull; null when the board was dead.';
comment on column boards.last_seen is 'The Pacific day of the pull that wrote the row (2026-10-19); every board was asked in that one pull, dead boards included, so this is the probe day, not the day the board was last seen alive.';
comment on column boards.flagged is 'The slug or company matches sandbox, test or demo.';