# Salaries: pay for data, AI and engineering roles > Base salary for data, AI and engineering roles by company, title, level and US city, from two public sources: 2,862 pay ranges posted in open jobs at 93 companies, and 93,898 certified H-1B wages from the US Department of Labor. By fru.dev. Posted ranges come from each employer's public Greenhouse, Ashby or Lever job board (119 boards so far; each run probes more fru.dev registry companies for a board and adds the ones it finds), read every Wednesday after checking the company's robots.txt; a range is kept only when the posting states one in US dollars per year, and it links to the posting. Titles use the titles.fru.dev synonym map, levels are read from the job title, and locations map to US metros or Remote (US). H-1B wages come from the DOL OFLC LCA disclosure files (certified, full-time H-1B filings of tracked employers; FY2025-Q4 to FY2026-Q3), loaded quarterly; no names or contacts are stored. Medians are shown only with 3 or more postings or filings. History is append-only: a range change, a new posting and a closed posting are all logged (/changes), and weekly medians are never rewritten. Last rebuilt: 2026-09-25 10:10:09 UTC. ## About this data Pay ranges posted on public Greenhouse, Ashby and Lever job boards, read every Wednesday, and certified H-1B wages from US Department of Labor files, loaded quarterly; unverified boards are marked. Base salary only, not total pay or an offer. The list grows as each run finds more companies' job boards. Not investment advice. Logos via logo.dev; trademarks belong to their owners. Anonymous usage stats via Google Analytics. ## Pages - [Salaries by title](https://salaries.fru.dev/): every tracked title with its posted and H-1B medians - [Companies](https://salaries.fru.dev/companies) - [Cities](https://salaries.fru.dev/cities) - [H-1B wages](https://salaries.fru.dev/h1b) - [Changes (append-only history)](https://salaries.fru.dev/changes) - [Sources and method](https://salaries.fru.dev/about) ## Titles - [Software Engineer](https://salaries.fru.dev/titles/software-engineer): posted median $237k (1323 ranges), H-1B median $188k (35153 filings) - [Engineering Manager](https://salaries.fru.dev/titles/engineering-manager): posted median $280k (196 ranges), H-1B median $250k (1225 filings) - [Solutions Engineer](https://salaries.fru.dev/titles/solutions-engineer): posted median $214k (193 ranges), H-1B median $178k (1140 filings) - [Forward Deployed Engineer](https://salaries.fru.dev/titles/forward-deployed-engineer): posted median $216k (162 ranges), H-1B median $185k (124 filings) - [Machine Learning Engineer](https://salaries.fru.dev/titles/ml-engineer): posted median $270k (129 ranges), H-1B median $226k (1542 filings) - [Security Engineer](https://salaries.fru.dev/titles/security-engineer): posted median $230k (127 ranges), H-1B median $178k (539 filings) - [Data Scientist](https://salaries.fru.dev/titles/data-scientist): posted median $255k (102 ranges), H-1B median $191k (1955 filings) - [Research Engineer](https://salaries.fru.dev/titles/research-engineer): posted median $348k (77 ranges), H-1B median $222k (215 filings) - [AI Engineer](https://salaries.fru.dev/titles/ai-engineer): posted median $257k (67 ranges), H-1B median $232k (41 filings) - [Member of Technical Staff](https://salaries.fru.dev/titles/member-of-technical-staff): posted median $310k (65 ranges), H-1B median $214k (839 filings) - [Agent Engineer](https://salaries.fru.dev/titles/agent-engineer): posted median $285k (52 ranges), H-1B median $227k (7 filings) - [Site Reliability Engineer](https://salaries.fru.dev/titles/site-reliability-engineer): posted median $216k (51 ranges), H-1B median $200k (253 filings) - [Full Stack Engineer](https://salaries.fru.dev/titles/full-stack-engineer): posted median $229k (51 ranges), H-1B median $205k (34 filings) - [Research Scientist](https://salaries.fru.dev/titles/research-scientist): posted median $256k (48 ranges), H-1B median $214k (1460 filings) - [Data Engineer](https://salaries.fru.dev/titles/data-engineer): posted median $241k (42 ranges), H-1B median $174k (1579 filings) - [Platform Engineer](https://salaries.fru.dev/titles/platform-engineer): posted median $202k (41 ranges), H-1B median $140k (130 filings) - [Developer Advocate](https://salaries.fru.dev/titles/developer-advocate): posted median $190k (25 ranges), H-1B median $218k (19 filings) - [Applied AI Engineer](https://salaries.fru.dev/titles/applied-ai-engineer): posted median $257k (19 ranges), H-1B median $242k (5 filings) - [Analytics Engineer](https://salaries.fru.dev/titles/analytics-engineer): posted median $195k (16 ranges), H-1B median $211k (53 filings) - [Design Engineer](https://salaries.fru.dev/titles/design-engineer): posted median $264k (14 ranges), H-1B median $178k (746 filings) - [Data Analyst](https://salaries.fru.dev/titles/data-analyst): posted median $169k (13 ranges), H-1B median $140k (1095 filings) - [Product Engineer](https://salaries.fru.dev/titles/product-engineer): posted median $242k (13 ranges), H-1B median $168k (62 filings) - [MLOps Engineer](https://salaries.fru.dev/titles/mlops-engineer): posted median $310k (9 ranges), H-1B median $253k (10 filings) - [Applied Scientist](https://salaries.fru.dev/titles/applied-scientist): posted median $256k (8 ranges), H-1B median $185k (1582 filings) - [DevOps Engineer](https://salaries.fru.dev/titles/devops-engineer): posted median $168k (5 ranges), H-1B median $220k (26 filings) - [Evals Engineer](https://salaries.fru.dev/titles/evals-engineer): posted median $238k (5 ranges) - [Head of Data](https://salaries.fru.dev/titles/head-of-data): posted median $333k (3 ranges), H-1B median $313k (8 filings) - [LLM Engineer](https://salaries.fru.dev/titles/llm-engineer): posted median $270k (2 ranges), H-1B median $189k (1 filings) - [Head of AI](https://salaries.fru.dev/titles/head-of-ai): posted median $341k (1 ranges), H-1B median $306k (10 filings) - [Context Engineer](https://salaries.fru.dev/titles/context-engineer): posted median $187k (1 ranges) - [Founding Engineer](https://salaries.fru.dev/titles/founding-engineer): posted median $225k (1 ranges) - [AI Safety Researcher](https://salaries.fru.dev/titles/ai-safety-researcher): posted median $363k (1 ranges) - [Computer Vision Engineer](https://salaries.fru.dev/titles/computer-vision-engineer): no posted ranges, H-1B median $207k (15 filings) - [Prompt Engineer](https://salaries.fru.dev/titles/prompt-engineer): no posted ranges, H-1B median $239k (2 filings) - [Deep Learning Engineer](https://salaries.fru.dev/titles/deep-learning-engineer): no posted ranges, H-1B median $202k (2 filings) - [Big Data Engineer](https://salaries.fru.dev/titles/big-data-engineer): no posted ranges, H-1B median $169k (1 filings) - [Blockchain Engineer](https://salaries.fru.dev/titles/blockchain-engineer): no posted ranges, H-1B median $219k (1 filings) ## Companies with the most posted ranges - [Databricks](https://salaries.fru.dev/companies/databricks): 298 ranges, median $216k, H-1B median $181k - [OpenAI](https://salaries.fru.dev/companies/openai): 248 ranges, median $356k, H-1B median $325k - [Anthropic](https://salaries.fru.dev/companies/anthropic): 158 ranges, median $403k, H-1B median $282k - [Roblox](https://salaries.fru.dev/companies/roblox): 140 ranges, median $269k, H-1B median $260k - [Waymo](https://salaries.fru.dev/companies/waymo): 130 ranges, median $238k, H-1B median $205k - [Palantir](https://salaries.fru.dev/companies/palantir): 107 ranges, median $168k, H-1B median $160k - [Snowflake](https://salaries.fru.dev/companies/snowflake): 99 ranges, median $244k, H-1B median $197k - [CoreWeave](https://salaries.fru.dev/companies/coreweave): 94 ranges, median $212k, H-1B median $230k - [Zoox](https://salaries.fru.dev/companies/zoox): 82 ranges, median $245k, H-1B median $222k - [Harvey](https://salaries.fru.dev/companies/harvey): 66 ranges, median $263k, H-1B median $237k - [Scale AI](https://salaries.fru.dev/companies/scale-ai): 61 ranges, median $243k, H-1B median $246k - [Coinbase](https://salaries.fru.dev/companies/coinbase): 56 ranges, median $208k, H-1B median $212k - [Robinhood](https://salaries.fru.dev/companies/robinhood): 53 ranges, median $213k, H-1B median $204k - [xAI](https://salaries.fru.dev/companies/xai): 45 ranges, median $310k, H-1B median $332k - [Mercor](https://salaries.fru.dev/companies/mercor): 43 ranges, median $330k, H-1B median $318k - [Brex](https://salaries.fru.dev/companies/brex): 40 ranges, median $216k, H-1B median $207k - [Plaid](https://salaries.fru.dev/companies/plaid): 38 ranges, median $227k, H-1B median $232k - [Okta](https://salaries.fru.dev/companies/okta): 36 ranges, median $221k, H-1B median $195k - [Baseten](https://salaries.fru.dev/companies/baseten): 36 ranges, median $248k, H-1B median $248k - [Decagon](https://salaries.fru.dev/companies/decagon): 35 ranges, median $300k, H-1B median $325k - [Perplexity](https://salaries.fru.dev/companies/perplexity): 35 ranges, median $313k, H-1B median $274k - [MongoDB](https://salaries.fru.dev/companies/mongodb): 34 ranges, median $187k, H-1B median $201k - [Datadog](https://salaries.fru.dev/companies/datadog): 34 ranges, median $219k, H-1B median $234k - [Ramp](https://salaries.fru.dev/companies/ramp): 33 ranges, median $255k, H-1B median $210k - [Discord](https://salaries.fru.dev/companies/discord): 33 ranges, median $233k, H-1B median $260k ## Data - [Every open posted range as plain text](https://salaries.fru.dev/llms-full.txt) - [Sitemap](https://salaries.fru.dev/sitemap.xml) - [JSON: titles](https://salaries.fru.dev/api/titles) - [JSON: postings](https://salaries.fru.dev/api/postings) - [JSON: H-1B](https://salaries.fru.dev/api/h1b) ## API - [For AI agents](https://salaries.fru.dev/agents): how to use this data in an agent (system prompt line, tool definition, code) - [OpenAPI 3.1 spec](https://salaries.fru.dev/openapi.json): the public read endpoints below, ready to load as tools - [GET /api/titles](https://salaries.fru.dev/api/titles?limit=3): Pay by job title: posted ranges and H-1B wages; returns titles with slug, name, family, titles.fru.dev link, posted-range count, company count, stats (p10, p25, median, p75, p90 of range midpoints; medians of posted min and max) and the H-1B summary (n, median, p25, p75) - [GET /api/titles/{slug}](https://salaries.fru.dev/api/titles/ml-engineer): One title: pay by level, company and city, weekly and quarterly history; returns the title summary, byLevel, byCompany and byCity stats with H-1B medians, the weekly posted series and H-1B medians by fiscal quarter - [GET /api/companies](https://salaries.fru.dev/api/companies?since=2026-09-01&limit=2): Employers with their pay summary and dated posted ranges (for the companies.fru.dev registry); returns companies with slug (companies.fru.dev slug), name, domain, page link, posted-range count and median, H-1B filings and median, and items: posted ranges with the date first seen, title and source posting - [GET /api/companies/{slug}](https://salaries.fru.dev/api/companies/databricks): One employer: pay by title and level, H-1B by title, open posted ranges; returns the company summary, byTitle and byLevel stats, h1bByTitle, weekly series, H-1B by quarter and up to 200 open postings with range and URL - [GET /api/cities](https://salaries.fru.dev/api/cities): Pay by US metro and remote; returns cities with slug, name, state, posted-range count, company count, stats and the H-1B summary - [GET /api/postings](https://salaries.fru.dev/api/postings?title=data-engineer&limit=2): Open postings with a stated range, newest first; returns postings with company, title, role slug, level, city, location, min and max (USD per year), first seen date and the posting URL - [GET /api/h1b](https://salaries.fru.dev/api/h1b?company=google&title=data-scientist): H-1B LCA wages by employer and title over the last four fiscal quarters; returns rows with company and/or title, filings, median, p25 and p75 of the offered annual wage, the quarters covered and the DOL source files - [GET /api/changes](https://salaries.fru.dev/api/changes?since=2026-09-01&limit=3): The append-only history: ranges added, minimums and maximums changed, postings closed; returns changes with time, posting id, company, title slug, field (added, salary_min, salary_max, title, closed, reopened), old and new value and the posting URL - [GET /api/search](https://salaries.fru.dev/api/search?q=machine%20learning&limit=3): Search titles, companies and cities; returns up to 20 ranked results with title, link and one line Free to read. Cite "Salaries (salaries.fru.dev)" with a link. Responses are cached at the edge; keep to about 60 requests a minute. Employer boards found automatically are marked Unverified until the board is confirmed as that company's own.