CNC Machine Tool Programmer

Develop programs to control machining or processing of metal or plastic parts by automatic machine tools, equipment, or systems.

Job Outlook through 2026

Employment Current: 1,140
Employment Projected: 1,360
Percentage Change: 19.3%


Vocational schools, related on-the-job experience, or an associate's degree.

Sample Job Titles

  • AD CAM Programmer (Computer-Aided Design Computer-Aided Manufacturing Programmer)
  • Computer Numerical Control Machine Operator (CNC Machine Operator)
  • Computer Numerical Control Machining Center Operator (CNC Machining Center Operator)
  • Computer Numerical Control Machinist (CNC Machinist)
  • Computer Numerical Control Operator (CNC Operator)
  • Computer Numerical Control Programmer (CNC Programmer)
  • Machine Shop Lead Man
  • Machining Manager, Process Engineer
  • Programmer


  • Write programs in the language of a machine's controller and store programs on media such as punch tapes, magnetic tapes, or disks
  • Determine the sequence of machine operations, and select the proper cutting tools needed to machine workpieces into the desired shapes
  • Revise programs or tapes to eliminate errors, and retest programs to check that problems have been solved
  • Analyze job orders, drawings, blueprints, specifications, printed circuit board pattern films, and design data to calculate dimensions, tool selection, machine speeds, and feed rates
  • Write instruction sheets and cutter lists for a machine's controller to guide setup and encode numerical control tapes


  • Programming — Writing computer programs for various purposes
  • Monitoring — Monitoring/Assessing performance of yourself, other individuals, or organizations to make improvements or take corrective action
  • Operation Monitoring — Watching gauges, dials, or other indicators to make sure a machine is working properly
  • Active Learning — Understanding the implications of new information for both current and future problem-solving and decision-making
  • Complex Problem Solving — Identifying complex problems and reviewing related information to develop and evaluate options and implement solutions

Average Wages in PA

Entry Level: $37,370
Average: $53,680
Experienced: $79,120