Home › HRMS › Job roles › Production › CNC Programmer
Production · Mid level

CNC Programmer job description

A CNC Programmer writes, proves and improves the part programs that run CNC turning centres and vertical machining centres. They read drawings, plan operations and tooling, create programs by hand or with CAM software, and support setters and operators through first-off production. A good CNC programmer delivers programs that produce a correct first piece, run at the shortest safe cycle time and are documented well enough for any shift to repeat the job.

DetailFor this role
DepartmentProduction
LevelMid level
Reports toProduction Manager
Direct reportsNone
Experience3 to 7 years of CNC programming and setting on turning centres or VMCs

CNC Programmer job description template

Copy this job description, replace the text in square brackets and post it on your careers page or a job portal.

Job title: CNC Programmer

Department: Production

Reports to: Production Manager

Location: [City], [office, branch or site]

About the role

A CNC Programmer writes, proves and improves the part programs that run CNC turning centres and vertical machining centres. They read drawings, plan operations and tooling, create programs by hand or with CAM software, and support setters and operators through first-off production. A good CNC programmer delivers programs that produce a correct first piece, run at the shortest safe cycle time and are documented well enough for any shift to repeat the job.

Key responsibilities

  • Study part drawings, tolerances and GD&T callouts, and plan the sequence of operations, fixtures and cutting tools for each component.
  • Write CNC programs in G and M code for Fanuc, Siemens or Mitsubishi controls, or generate them from CAM software.
  • Simulate programs to check toolpaths, collisions and stock allowances before loading them on the machine.
  • Prove new programs on the machine with the setter, adjust offsets and feeds, and get the first piece approved by quality.
  • Shorten cycle times by improving toolpaths, cutting data and tool choice without hurting finish or tool life.
  • Prepare setup sheets, tool lists and operation sheets so operators on every shift can run the job correctly.
  • Maintain a controlled program library with revision numbers, and update programs when drawings change.
  • Troubleshoot dimensional errors, tool breakage and poor surface finish, and correct the program or process.
  • Select tooling and inserts with tool suppliers for new materials or difficult features.
  • Train CNC operators on program basics, offsets and safe restart after an interruption.

Requirements

  • Diploma in Mechanical, Production or Tool and Die Engineering
  • BE in Mechanical Engineering is preferred by some companies
  • A CNC programming certificate from NTTF, CITD or an MSME Tool Room is an advantage
  • 3 to 7 years of CNC programming and setting on turning centres or VMCs

KRAs and KPIs for a CNC Programmer

Key result areas for the appraisal form, each with a KPI you can measure every month or quarter.

Key result areaHow to measure it
First piece successNew programs giving an approved first piece within two trials for 90 percent of jobs
Cycle timeCycle time on selected high-volume parts cut by the quarterly target
Program controlZero parts made with an outdated program revision, checked in monthly audits
Setup documentationSetup sheet and tool list issued for every new program before production release
Machine safetyZero machine crashes caused by programming errors
Shop floor supportProgram issues on the floor attended within 30 minutes during the shift

Skills and tools

G and M code programmingCAM software (Mastercam, NX CAM)Fanuc and Siemens controlsEngineering drawing and GD&TCutting tools and cutting dataMeasuring instrumentsAttention to detailProblem solving at the machine

Tools used day to day: Mastercam or NX CAM, Fanuc and Siemens CNC controls, Vernier, micrometer and bore gauge, CNC simulation software, DNC program transfer.

Reporting line and career path

Production ManagerCNC Programmer

Interview questions for a CNC Programmer

  1. Explain the difference between G90 and G91, and when you would use each.
  2. Your first piece is oversize on one bore by 0.05 mm. What do you check, and in what order?
  3. How would you reduce cycle time on a VMC job without changing the machine?
  4. How do you control program revisions so that an old program is never run?
  5. How would you program a thin-walled part that tends to vibrate during machining?
  6. Which CAM software have you used, and what post-processor problems have you faced?

Managing a CNC Programmer in ZeniaHR

Hire and manage your production team in one place

Post the role, onboard the new hire, and track attendance, leave and KRAs in ZeniaHR. Free for your first 50 employees.

Book a free demoSee pricing

Frequently asked questions

What does a CNC programmer do?

A CNC programmer writes the programs that control CNC lathes, turning centres and machining centres. They read drawings, plan operations and tools, write G code or use CAM software, simulate the program, prove it on the machine with the setter and hand over setup sheets for production. Good programmers also cut cycle times on running jobs.

What is the difference between a CNC programmer and a CNC operator?

A CNC operator loads parts, runs the machine, checks dimensions and adjusts offsets within limits. A CNC programmer creates and proves the program the operator runs, chooses tools and cutting data, and fixes the program when parts go wrong. Many programmers start as operators and setters before moving into programming.

Which software is used for CNC programming?

Common CAM packages in Indian shops are Mastercam, Siemens NX CAM and PowerMill for complex mould work, along with Autodesk tools in smaller units. Simple turning jobs are often programmed by hand at the Fanuc or Siemens control. Programmers also use simulation software and DNC links to send programs to machines.