EXPOSED
The core of this job — translating a CAD model into toolpaths, picking feeds and speeds, generating and post-processing G-code — is exactly the pattern work CAM vendors are already automating with feature recognition, tool libraries, and automated roughing/finishing strategies. What resists is the part that happens at the machine: fixturing and workholding decisions, dry runs and first-article proveout, reading chatter and tool wear, and rescuing a program when the setup doesn't match the model. There is no license here and no signature requirement, so the only durable moat is shop-floor judgment that the programmer personally owns.
Headcount grew steadily across the period.
Median pay $56,450 → $68,120 -3.5% in real terms
This line is counted by the Bureau of Labor Statistics — the one figure on this page that isn't a judgement of ours. Headcount moves on demand, offshoring, demographics and the business cycle, and automation is one term among several, often not the loudest.
So a falling line is not evidence that AI did it, and a rising one is not evidence that it won't. Both happen in this register: some occupations resist automation and shrink anyway, others are highly automatable and keep growing. The marked year is 2020.
BLS projection, 2024–2034
+12.8% 28,300 → 31,900 on the projections basis
Exposed, but growing
AI can already do a lot of these tasks, and the BLS still expects +12.8% more of these jobs by 2034. Demand for the output is growing faster than the work is being automated away — the mechanism BLS gives for software developers, and the combination people most often misread as an error.
Different clocks. The score is what current AI could do to this work today. The projection is how many of these jobs will exist in 2034. Everything between the two — how fast employers actually adopt, whether demand grows in the meantime — is why they can point opposite ways without either being wrong.
~3,100 openings a year on average, including replacing people who leave.
ProgrammerApplication EngineerNumerical Tool ProgrammerProcess Control ProgrammerMetal Numerical Tool ProgrammerPlastic Numerical Tool ProgrammerMetal Numerical Control ProgrammerNumerical Control Programmer (NC Programmer)CNC Tech (Computer Numerical Control Technician)CAD Programmer (Computer-Aided Design Programmer)CNC Operator (Computer Numerical Control Operator)CNC Machinist (Computer Numerical Control Machinist)CNC Programmer (Computer Numerical Control Programmer)Numerical Control Tool Programmer (NC Tool Programmer)CAM Programmer (Computer-Aided Manufacturing Programmer)CNC Machinist (Computer Numerically Controlled Machinist)CNC Programmer (Computer Numerically Controlled Programmer)CNC Mill Programmer (Computer Numerical Control Mill Programmer)CNC Tool Programmer (Computer Numerical Control Tool Programmer)CNC Lathe Programmer (Computer Numerical Control Lathe Programmer)CNC Machine Operator (Computer Numerical Control Machine Operator)CNC Lathe Operator (Computer Numerically Controlled Lathe Operator)CNC Machine Programmer (Computer Numerical Control Machine Programmer)CNC Lathe Programmer (Computer Numerically Controlled Lathe Programmer)
Holding it up: embodiment . Weakest point: liability shield .
Mixed — a routine tier and a judgment tier Feature recognition in Mastercam/Fusion already generates roughing and finishing passes from a solid model and pulls speeds from a tool library, so the programming half of the job is largely pattern-matching — the 8 rather than a 4 reflects the proveout half: deciding how a thin-wall part will be held across three ops, dialing back a pass because the spindle is loading up, and editing G-code at the control when the fixture sits 0.015 off nominal.
Some physical or field component You are at the machine for setup sheets, tool presetting, touching off work offsets, single-blocking the first article and listening for chatter — but it's a climate-controlled shop with the part clamped in a known fixture, not field work, which is why this lands at 10 and not with the millwrights and riggers.
No licence, no signature requirement No license, no stamp, no certification anyone checks — an AS9100 or ISO audit trail names the shop and the inspector, and when a program crashes a spindle the exposure is scrap and downtime absorbed by the employer, not a personal legal claim against you.
Meaningful discretion You own real calls — op sequencing to control distortion, where to leave stock for finish, whether to trust a 3-plus-2 approach over full 5-axis on a tight-tolerance feature — but they land inside a print with stated tolerances and a first-article inspection that catches you before anything ships, capping this below the ambiguous-stakes band.
The verdict above describes this occupation as a whole. Almost nobody does the typical version of a job — tick what's actually in your week and see how your own mix sits.
Your task mix speaks to task resistance (8/20 here) — how much of the day's work current AI already does. That is the dimension the boxes above are about.
It cannot move the other three. Liability shield (2/20) is whether the law requires a licensed human to sign. Trust premium (5/20) is whether buyers specifically pay for a person. Judgment and accountability (10/20) is whether the role exists to own consequential calls. Those are facts about the occupation's standing, not about which tasks are in your week — a paralegal who does only trial exhibits still holds no licence. Together they are 17 of this occupation's 35 points (49%).
Embodiment (10/20) is also a property of the work rather than the worker, but we don't tag individual tasks as physical or not, so the picker can't tell you anything about it. That's a limit of this tool, not a claim.
Did we get the list right? Tell us what's missing — the tasks are written from the outside, and you're reading this from the inside.
The moves above are yours to make. This is the other half: what would have to change in the world for the occupation itself to score higher. None of it is in any one person's gift, but it is where the floor actually comes from. Scores here are not a one-way ratchet. Only two of the five dimensions — task resistance and embodiment — track what machines can do. The other three track law, what buyers will pay for, and who is answerable, and those move in both directions, often in response to the same pressure AI creates. If every lever below landed, this occupation would score around 50/100, still EXPOSED.
As CAM feature recognition and automated toolpath generation absorb the routine 2.5D/prismatic tier, the remaining programming work concentrates on 5-axis simultaneous, thin-wall and exotic-alloy work, deburring-free finishing, and multi-op fixture strategy where the model does not encode the setup. Watch for shops where the programmer title merges with 'manufacturing engineer' or 'process owner' — the job that remains is proveout, fixture design and process qualification, not code generation.
AS9100 / NADCAP and ITAR-adjacent regimes already require named-person process qualification records and first-article inspection sign-off (AS9102 FAI forms). If primes tighten this so that the person who authored or approved the machining program must personally sign the FAI and the process qualification — rather than a QA generalist — a genuine named-signature requirement attaches. Watch for prime-contractor supplier quality clauses naming the program author on AS9102 Form 3.
On safety-critical parts (rotating aero components, implants, pressure-boundary work), if a shop formally assigns the programmer ownership of the machining process spec — feeds/speeds affecting residual stress, surface integrity, tool-change intervals — then scrap, escapes and field failures trace to their call under ambiguity. Watch for FAA/FDA-driven process-control requirements (e.g. FDA QSR/ISO 13485 process validation for implant machining) naming a responsible engineer for the machining process.
If shops keep pushing high-mix low-volume and one-off/repair work (aerospace MRO, medical implants, defense spares), the programmer stays at the machine doing workholding, indicator setup, first-article dial-in and chatter diagnosis — tasks that require hands on the spindle. Conversely a shift to long-run production with pallet pools and automated probing lowers this.
The limit. Trust premium has no realistic route: buyers purchase parts to print, not a named programmer, and no customer will pay more because a human wrote the G-code. The liability and accountability levers are real but they attach to the manufacturing-engineer role the job is being absorbed into, not to 'CNC programmer' as a standalone title — the occupation may survive by ceasing to exist under that name.
| Los Angeles-Long Beach-Anaheim, CA | 1,350 | $82,950 +22% |
| Detroit-Warren-Dearborn, MI | 1,030 | $65,870 -3% |
| Minneapolis-St. Paul-Bloomington, MN-WI | 850 | $78,010 +15% |
| Chicago-Naperville-Elgin, IL-IN | 800 | $69,400 +2% |
| New York-Newark-Jersey City, NY-NJ | 780 | $71,310 +5% |
| Houston-Pasadena-The Woodlands, TX | 720 | $69,820 +2% |
| Milwaukee-Waukesha, WI | 650 | $66,860 -2% |
| Boston-Cambridge-Newton, MA-NH | 540 | $85,560 +26% |
| San Jose-Sunnyvale-Santa Clara, CA | 420 | $102,980 +51% |
| Wichita, KS | 390 | $99,790 +46% |
| St. Louis, MO-IL | 290 | $94,230 +38% |
We have no reported case of a named organisation automating this occupation. Not one deployment, not one announcement.
That is worth saying out loud next to a score of 35. The verdict above is about what the work exposes — what current AI could do to these tasks. It is not a claim that anyone has done it. For this occupation those two things have come apart completely: the capability argument is on this page, and the evidence column is empty.
Has AI actually changed your work? One tap, anonymous, and the running tally is public. Nothing else is asked of you.
Rather than check back: get the digest and we'll tell you what changed — or watch a single occupation from its own page.