Machine Learning Engineer Skills and Job Description (September 2026)

Python is asked for by 60% of Machine Learning Engineer employers, the most common requirement across 300 live postings read in September 2026. Then SQL, Software Engineering, Azure.

Median posted pay is $162,562, most postings between $135,000 and $193,300 — from 201 postings that disclosed it, across 92 companies.

Posted pay is down 5.5% since 2026-09-07 ($172,031 → $162,562).

Check your résumé against these →

These are ranges employers published in their own job postings — not salaries people typed into a form years ago.

What Machine Learning Engineer postings actually ask for

Ranked by how many of the 300 posting descriptions mention them.

Python 60%
SQL 31%
Software Engineering 31%
Azure 30%
AWS 29%
Data Science 29%
Java 25%
Git 24%
Kubernetes 22%
PyTorch 21%
Data Pipelines 21%
Data Engineering 20%
LLM 19%
Cloud Platforms 19%
TensorFlow 16%
Distributed Systems 16%
Agile 16%
Electrical Engineering 16%
Docker 16%
Spark 16%
CI/CD 16%
Programming Languages 16%
Databricks 15%
Infrastructure As Code 13%
DevOps 12%

Would your background clear the bar?

These are the requirements Machine Learning Engineer postings list. Paste one of those postings and your résumé — FitToHire checks you against every requirement and shows the evidence behind each verdict.

15 companies in this sample have Machine Learning Engineer postings open right now.

Check your fit →

What Machine Learning Engineers earn

10th $99K 25th $135K median $163K 75th $193K 90th $220K
$75K $239K

Each bar is a pay band. Height is how many of the 92 employers who published a salary fall in it, counted once each.

Pay bands in numbers
Employer median pay by band
Pay band Employers
$74,900–$91,290 5
$91,290–$107,680 5
$107,680–$124,070 6
$124,070–$140,460 12
$140,460–$156,850 11
$156,850–$173,240 16
$173,240–$189,630 10
$189,630–$206,020 10
$206,020–$222,410 8
$222,410–$238,800 9
Total 92

Who is hiring Machine Learning Engineers

15 companies with open postings in this sample.

Roblox
$320,145 3
Akina, Inc.
$237,000 3
Meta
$220,498 26
Apple
$214,000 14
Qualcomm
$202,500 3
Amazon Web Services
$194,400 6
Amazon.com
$169,050 19
JPMorganChase
$161,375 5
Microsoft
$147,600 4

Also hiring: Capital One, BlueFlag LLP, Slalom Consulting, BV Teck, Hitachi Rail, HII.

Pay by experience level

Level is taken from the posting title, so only postings that state one are counted.

Senior
$173,772 44
Lead / Manager
$185,875 39
Principal / Staff
$215,982 18
Intern
$71,760 11

Pay by location

Metros with at least three salaried postings.

New York, NY
$184,650 18
Remote, US
$157,500 14
Seattle, WA
$195,500 12
Sunnyvale, CA
$175,750 12
Austin, TX
$150,050 11
Menlo Park, CA
$247,750 8
San Diego, CA
$178,300 7
Redmond, WA
$165,000 7
Cupertino, CA
$214,000 7
Washington, DC
$208,000 5
Bellevue, WA
$174,950 5
Chicago, IL
$180,687 4

Remote vs onsite pay

Median of remote-eligible postings against the rest.

Remote-eligible
$155,000
Onsite
$181,375

50 remote-eligible postings against 158 onsite. Onsite pays 14.5% more in this sample.

Where this data comes from

  • 300 live postings analysed
  • 201 (67%) published a salary range
  • 75 (25%) were remote-eligible
  • 129 distinct employers
  • Requirements read from 300 full posting descriptions
  • Each employer gets one vote in the median, so a company running a large hiring campaign cannot move it
  • Ranges are converted to annual figures; hourly and contract postings are normalised before comparison

How the requirements were read

Requirements are not keyword counts. Each posting is read by our extraction engine, which works out what the employer is actually asking for and separates a requirement from a section heading or a line of boilerplate. Two postings asking for the same thing in different words are counted once, because our skills graph knows which phrasings mean the same thing and which imply others.

The share beside each requirement is the percentage of distinct EMPLOYERS in that sample who asked for it, counted one vote per company so a firm posting the same role many times cannot inflate its own requirements. Measured, not estimated, and read from the posting text rather than counted as keywords.

Because every reading is dated, the movement figures above are real month-over-month change. Sites built on self-reported salaries cannot produce that number: their data has no posting date.