Skip to main content
JobDescription.orgSearch

Manufacturing

CNC Programmer Job Description

A CNC Programmer writes the programs that tell CNC mills, lathes and multi-axis machining centers how to cut a part, working from engineering drawings and 3D models in CAM software. The job sits between engineering and the shop floor in machine shops, metal fabricators and aerospace and medical parts plants, and covers toolpaths, simulation, post-processing, setup sheets and prove-out at the machine. BLS files the role as Computer Numerically Controlled Tool Programmers, which earned a median annual wage of $68,120 in May 2025, with the 10th percentile at $47,530 and the 90th percentile at $100,320.

Last updated

Role at a glance

Typical education
High school diploma plus a community college certificate or associate degree in machining, with shop experience.
Typical experience
As a rough guide, a few years of setup and operating work before programming unproven jobs alone.
Key certifications
NIMS CAM Milling Programmer, NIMS CAM Turning Programmer, Autodesk Certified Professional in CAM for 3 Axis Milling, Mastercam Certification.
Top employer types
Fabricated metal product manufacturers, machine shops and aerospace product and parts manufacturers.
Growth outlook
BLS projects CNC tool programmer employment to grow 6 percent from 2025 to 2035.
AI impact (through 2030)
AI assistants inside CAM software can adjust feeds and speeds on voice or text command, but the programmer still verifies and proves out the code.

Duties and responsibilities

  • Import customer CAD models and engineering drawings, define stock and work offsets, and plan the order of machining operations for each part.
  • Select cutting tools, holders and inserts for every operation, matching geometry and carbide grade to the material, the machine and the finish callout.
  • Build roughing, semi-finishing and finishing toolpaths in CAM software such as Mastercam, NX CAM or Fusion, then assign feeds and speeds.
  • Run full machine simulation with the real tool assemblies, fixtures and machine model to catch gouges, collisions and axis over-travel before release.
  • Post-process verified toolpaths into G-code for the specific control, then read the output for unsafe rapids, missing coolant calls or wrong offsets.
  • Write setup sheets listing workholding, tool numbers, stick-out lengths, offsets and inspection points so operators can load the job without guesswork.
  • Prove out new programs at the machine with single-block runs, reduced rapids and first-article inspection, editing code until parts meet print.
  • Revise released programs when engineering changes, substitute tooling or new fixtures arrive, and record each revision in the shop's program control system.
  • Interpret GD&T callouts on drawings, including datum schemes, profile and true position, to choose setups that hold the critical tolerances.
  • Work with machinists, quality inspectors and manufacturing engineers to diagnose chatter, poor finish, tool breakage and dimensional misses on running jobs.

Overview

A CNC Programmer turns a part drawing and a 3D model into the instructions a machine tool follows: which tools cut, in what order, along which paths, at what speed. O*NET defines the occupation as workers who "develop programs to control machining or processing of materials by automatic machine tools, equipment, or systems." In a manufacturing plant or contract machine shop, that means the programmer sits between engineering, which owns the print, and the floor, which owns the spindle.

From model to toolpath. A job usually starts with a customer STEP file, a drawing with GD&T callouts and a quantity. The programmer decides how the part will be held, how many setups it needs, and which machine fits: a 3-axis vertical mill for a simple bracket, a mill-turn center for a shaft with cross holes, a 5-axis trunnion machine for an impeller. Then the CAM work begins. Stock is defined, tools are pulled from the library, and roughing, semi-finishing and finishing toolpaths are built and tuned for engagement, step-over and chip load.

Simulation and the post. Before anything runs, the programmer checks the program in simulation with the real holders, fixtures and machine kinematics loaded. A gouge or a holder collision found on screen costs a few minutes; found on the machine, it costs a spindle. The verified toolpaths then pass through a post-processor that writes G-code for one specific control, whether a Fanuc, Haas, Okuma, Siemens Sinumerik or Heidenhain. A good programmer reads that output rather than trusting it, looking for rapids that clip a clamp, a missing coolant call or the wrong work offset.

Prove-out on the floor. First runs happen at the machine, often in single-block mode with the rapid override turned down. The programmer watches the first cut, listens for chatter, checks chip formation and hands the first article to inspection. If a thin wall deflects or a bore comes in tight, the fix goes back into CAM, not just into the control, so the next run inherits it.

Documentation and control. A finished program comes with a setup sheet: fixture, tool list, stick-out lengths, offsets and the features to inspect. Released programs live in a controlled library, and every engineering change or tooling swap creates a new revision. When a customer asks which program made a given lot of parts, that revision trail is the answer.

Where the work happens. O*NET's list of reported job titles for this occupation includes CAM Programmer and CNC Machine Operator, a reminder that the line between programming and running varies by employer. In a small job shop one person may quote, program, set up and run a part in the same week. In a large production plant the programmer may never touch a machine handle but will still own cycle time and scrap on every job they release.

Qualifications

Education. The usual route is a high school diploma followed by a community college certificate or associate degree in machining or manufacturing technology, plus shop time. When O*NET asked workers in this occupation how much education a new hire needs, 33% said a high school diploma or equivalent, 31% said a post-secondary certificate and 20% said some college with no degree. A degree in mechanical or manufacturing engineering technology is one route for people who want to move from programming toward manufacturing engineering.

Shop experience. As a rough guide, expect a few years of setup and operating work before handling unproven programs on expensive parts alone. Time spent indicating fixtures, touching off tools and fighting a tolerance at the machine is what makes later CAM decisions realistic.

Core technical skills.

  • One CAM package learned deeply, including multi-axis toolpaths and machine simulation, with working familiarity in a second.
  • Reading and hand-editing G-code and M-code for common controls such as Fanuc, Haas, Okuma and Siemens Sinumerik.
  • Blueprint reading and GD&T to ASME Y14.5, including datum reference frames, profile and position.
  • Cutting tool selection: carbide grades, coatings, holder types and the effect of stick-out on deflection.
  • Workholding design basics: vises, soft jaws, tombstones and dedicated fixtures.
  • Basic metrology: micrometers, bore gauges, height gauges and reading a CMM report.
  • Shop math, including trigonometry for hand-calculated positions and chamfers.

Credentials worth pursuing. The National Institute for Metalworking Skills (NIMS) offers CAM Milling Programmer and CAM Turning Programmer credentials aimed at people who plan and program jobs, alongside its longer-standing CNC Mill Programming Setup & Operations credential. Autodesk awards the Autodesk Certified Professional in CAM for 3 Axis Milling, an exam built around Fusion. Mastercam runs its own Mastercam Certification, which uses a set of practical tests to examine a programmer's ability to work effectively with CAM software, overcome common issues and produce high-quality finished parts. None of these is a license; they are proof of skill that a hiring manager can check.

Habits that separate good programmers. Document every program as if the next person to run it has never seen the part. Keep the tool library clean so a 12 mm end mill in CAM is the same 12 mm end mill in the crib. Ask operators what slowed them down on the last run, and fold the answer into the next revision. Treat a crash as a process failure to trace, not a personal embarrassment to hide.

Career outlook

The 2025-35 projection. In its 2025-35 Employment Projections, now shown in the Occupational Outlook Handbook, BLS projects employment of CNC tool programmers to grow from 28,600 in 2025 to 30,300 in 2035, an increase of 1,700 jobs, or 6 percent. O*NET classifies that as faster than average growth (5% to 6%) and tags the occupation as a Bright Outlook occupation. It also projects about 2,700 openings a year on average over the decade.

Why programmers and operators diverge. The OOH's explanation is automation. One of the most important factors shaping employment across metal and plastic machine work, BLS says, is the use of laborsaving machinery, and many firms are continuing to expand the use of technologies such as CNC tools and robots to improve quality and lower production costs. As a result, demand for most manual tool operators and tenders is likely to be reduced, while demand for CNC tool programmers is expected to be strong. The same OOH table projects CNC tool operator jobs to fall 9 percent over the decade. For someone running parts today, learning CAM is one way to move with that shift instead of against it.

Where the jobs and the money are. The BLS wage survey counted 28,500 CNC tool programmers in May 2025. Fabricated metal product manufacturing employed 9,360 of them, at a median annual wage of $68,140. Machine shops, the contract job shops that make parts to customer prints, employed 4,760 at a median of $74,090. Aerospace product and parts manufacturing employed 2,060, and that industry's median was $97,710, with a 90th percentile of $130,110. Those figures describe whole industries, not individual employers, so any one shop can sit well above or below them.

What AI is doing to the job. In a September 10, 2026 column, American Machinist argued that as changes sweep through contract machine shops, "the demands on programmers and machinists are advancing too," and listed AI oversight among the skills machinists must develop. Read that as a forecast rather than a measurement. What it means at the bench is practical: someone still has to judge whether a suggested toolpath will hold a thin wall, whether the post output is safe on a specific machine, and whether the first article passes inspection.

Where the career goes. BLS notes that across metal and plastic machine work, experienced workers with good communication and analytical skills may advance to supervisory positions. For a programmer, possible next steps include lead programmer or CAM manager roles that own tool libraries, post-processors and programming standards for a whole shop, as well as manufacturing engineering, process planning, applications engineering for a machine tool or CAM software dealer, or shop management. The skills that travel are the same ones that make a strong programmer: reading a print correctly, choosing a sound process and documenting it so others can repeat it.

Sample cover letter

Dear Ms. Alvarado,

I am applying for the CNC Programmer opening at Ridgeline Precision. For the past five years I have worked at a 40-person contract shop in Ohio, starting as a setup machinist on Haas verticals and moving into a full-time programming seat three years ago. Today I program parts for two Okuma 5-axis machines and a mill-turn center, mostly aluminum and 17-4 stainless housings for instrument and defense customers.

The project I am proudest of was a manifold block that had been running in four setups with a scrap problem on a cross-drilled port. I reworked the process into two setups on the 5-axis, designed a set of soft jaws to locate on a machined datum, and rebuilt the drilling strategy with a peck cycle matched to the drill manufacturer's guidance. Scrap on that port stopped, and the job went from a weekly headache to a part the night shift runs without calling me.

I also took over our program library when the shop outgrew a shared folder full of files named FINAL2. I set up a revision scheme tied to drawing revisions, linked every program to its setup sheet and tool list, and taught the operators how to find the current release in seconds. Our quality manager now uses that history during customer audits.

I am drawn to Ridgeline because of your work on complex 5-axis aerospace components and your investment in machine simulation, which matches how I prefer to prove out a program before it reaches the floor. I would welcome the chance to walk through a few of my programs and setup sheets with your team.

Sincerely, Daniel Kessler

Frequently asked questions

What does a CNC Programmer do?
A CNC Programmer writes the programs that tell CNC mills, lathes and multi-axis machining centers how to cut a part, working from engineering drawings and 3D models in CAM software. The job sits between engineering and the shop floor in machine shops, metal fabricators and aerospace and medical parts plants, and covers toolpaths, simulation, post-processing, setup sheets and prove-out at the machine. BLS files the role as Computer Numerically Controlled Tool Programmers, which earned a median annual wage of $68,120 in May 2025, with the 10th percentile at $47,530 and the 90th percentile at $100,320.
What are the main duties of a CNC Programmer?
Core duties include: import customer CAD models and engineering drawings, define stock and work offsets, and plan the order of machining operations for each part; select cutting tools, holders and inserts for every operation, matching geometry and carbide grade to the material, the machine and the finish callout; and build roughing, semi-finishing and finishing toolpaths in CAM software such as Mastercam, NX CAM or Fusion, then assign feeds and speeds.
Should a CNC Programmer also know how to set up and run a machine?
It helps, and in some shops the two jobs sit with one person. O*NET's description of the occupation says these workers develop programs to control machine tools and "may also set up, operate, or maintain equipment." Time spent setting up and running parts gives a programmer a feel for what a toolpath does once it leaves the screen.
Which CAM software should I learn first?
Learn the system the shops you want to work for actually run, then get good at its multi-axis and simulation tools. O*NET's technology list for CNC tool programmers names Mastercam, Autodesk PartMaker and Unigraphics among the computer-aided manufacturing software used in the occupation. Skills in toolpath strategy and post-processing carry over from one package to the next.
How is AI changing the work of a CNC Programmer?
AI assistants have reached production CAM software. Mastercam 2026.R2, released February 9, 2026, added Mastercam Copilot, which lets users adjust feed rates and spindle speeds across multiple operations using voice or text commands, with confirmation prompts built in for safety, and Mastercam says the assistant supports approximately 200 toolpath types. The programmer still owns the result: simulation, the post, the first article and the sign-off.
How does a CNC programmer differ from a CNC operator?
The Bureau of Labor Statistics separates the two. CNC tool operators operate CNC equipment or robots to perform functions on metal or plastic workpieces, while CNC tool programmers develop computer programs to control the machining or processing of those parts. Some programmers start as operators or setup machinists before moving into the CAM seat.
What education do you need to become a CNC programmer?
BLS says that although metal and plastic machine workers typically need a high school diploma, CNC tool programmers usually need coursework beyond high school. Some community colleges and other schools offer courses and certificate programs that include CNC programming. BLS adds that training on CAD, CAM and CNC equipment may be helpful.

Sources

Salary figures and role details on this page were checked against the following sources. Dates show when each was last reviewed.

  1. Computer Numerically Controlled Tool Programmers, BLS Occupational Employment and Wage Statistics (May 2025)Checked Nov 10, 2026
  2. Aerospace Product and Parts Manufacturing, BLS Occupational Employment and Wage Statistics (May 2025)Checked Nov 10, 2026
  3. Machine Shops, BLS Occupational Employment and Wage Statistics (May 2025)Checked Nov 10, 2026
  4. Fabricated Metal Product Manufacturing, BLS Occupational Employment and Wage Statistics (May 2025)Checked Nov 10, 2026
  5. Metal and Plastic Machine Workers, Occupational Outlook Handbook, U.S. Bureau of Labor Statistics (2026)Checked Nov 10, 2026
  6. 51-9162.00 Computer Numerically Controlled Tool Programmers, O*NET OnLine, U.S. Department of Labor (2026)Checked Nov 10, 2026
  7. Mastercam 2026.R2 Delivers GPU-Accelerated Simulation and AI-Powered Assistance, Mastercam (February 9, 2026)Checked Nov 10, 2026
  8. AI-Enhanced Toolpaths and The Humans That Blaze Them, American Machinist (September 10, 2026)Checked Nov 10, 2026
  9. Machining Credentials, National Institute for Metalworking Skills (2026)Checked Nov 10, 2026
  10. Autodesk Certified Professional in CAM for 3 Axis Milling, Autodesk (2026)Checked Nov 10, 2026
  11. Mastercam Certification, Mastercam (2026)Checked Nov 10, 2026
  12. Bright Outlook: Computer Numerically Controlled Tool Programmers, O*NET OnLine, U.S. Department of Labor (2026)Checked Nov 10, 2026
See all Manufacturing jobs →