Ένας προγραμματιστής μηχανών είναι υπεύθυνος για τη δημιουργία προγραμματισμένων οδηγιών που ελέγχουν αυτοματοποιημένες συσκευές σε μια βιομηχανική ή άλλη βιομηχανική ρύθμιση. Για παράδειγμα, η τεχνολογία Υπολογιστικού Αριθμητικού Ελέγχου (CNC) είναι μια εξαιρετικά αποτελεσματική λύση στον βιομηχανικό τομέα, αλλά απαιτεί από έναν εξειδικευμένο χειριστή να εισάγει τις οδηγίες που λένε στις μηχανές πώς να συμπεριφέρονται. Αυτή είναι η δουλειά του προγραμματιστή μηχανών. Η τεχνολογία CNC εμπλέκεται σε μεγάλο αριθμό σταδιοδρομιών προγραμματιστή μηχανών, αν και υπάρχουν άλλες τεχνολογίες που απαιτούν επίσης τις δεξιότητες ενός προγραμματιστή μηχανών. Η κύρια δεξιότητα που χρησιμοποιούν οι προγραμματιστές μηχανών είναι η ικανότητά τους να διαβάζουν, να γράφουν και να κατανοούν τις γλώσσες προγραμματισμού που χρησιμοποιούνται από μηχανές που λειτουργούν με CNC.
Ο G-Code είναι η κυρίαρχη γλώσσα προγραμματισμού που χρησιμοποιούν οι προγραμματιστές μηχανών. Οι εντολές στο G-Code και στις περισσότερες άλλες γλώσσες που χρησιμοποιεί ένας προγραμματιστής μηχανής περιλαμβάνουν μια σύνταξη πολύ χαμηλού επιπέδου, που σημαίνει ότι δεν μοιάζουν με τα αγγλικά ή άλλες γλώσσες που χρησιμοποιούνται για ανθρώπινη επικοινωνία. Επομένως, ένας προγραμματιστής μηχανών αποδεικνύει την ικανότητά του κατανοώντας πώς αυτές οι εντολές σχετίζονται με τις πραγματικές διαδικασίες που εκτελούνται από το μηχάνημα. Κατανοεί επίσης τη φύση των φυσικών εργασιών που καλείται να εκτελέσει το μηχάνημα μέσω του προγραμματισμού. Αυτές οι εργασίες μπορεί να περιλαμβάνουν πράγματα όπως κόψιμο σπειρωμάτων σε μεταλλικές επιφάνειες ή διάτρηση σε υλικό.
Οι προγραμματιστές μηχανών είναι επιφορτισμένοι με το σχεδιασμό κώδικα που επιτρέπει σε ένα μηχάνημα να εκτελέσει μια εργασία παραγωγής πολλές χιλιάδες φορές. Ως εκ τούτου, είναι απαραίτητο τα προγράμματα που γράφουν να προκαλούν την εργασία του μηχανήματος σε πολύ στενές παραμέτρους ποιότητας, διασφαλίζοντας ότι η διαδικασία δεν θα έχει ως αποτέλεσμα ελαττωματικά προϊόντα. Το έργο του προγραμματιστή μηχανών είναι επομένως ένας πολύ σημαντικός συντελεστής στην ποιότητα της βιομηχανικής διαδικασίας στο σύνολό της.
Οι μηχανές CNC είναι σε θέση να εκτελούν εργασίες που θα ήταν εξαιρετικά δύσκολο για τους ανθρώπους να κάνουν ξανά και ξανά με ακρίβεια. Ορισμένες εργασίες, όπως η κοπή σπειρωμάτων σε βίδες, έχουν κάπως αυτοματοποιηθεί για πολλά χρόνια, αλλά η χρήση σύγχρονων, προγραμματισμένων μηχανημάτων επιτρέπει ακόμη μεγαλύτερο βαθμό αυτοματοποίησης και συνεπώς μεγαλύτερη αποδοτικότητα. Ένα προγραμματισμένο μηχάνημα είναι ικανό να κόψει μια ευθεία γραμμή ή να τρυπήσει μια τρύπα με ακρίβεια που είναι ανέφικτη με ανθρώπινη εργασία.
Παρόλο που η αυτοματοποίηση της βιομηχανίας οδήγησε στην εξάλειψη των εργασιών χειρωνακτικής εργασίας, οι μηχανές δεν μπορούν να προγραμματιστούν χωρίς κάποιο βαθμό ανθρώπινης συμβολής. Η σταδιοδρομία προγραμματιστή μηχανών εξαρτάται από αυτήν την απαραίτητη σύνδεση μεταξύ μηχανικής απόδοσης και ανθρώπινης κατεύθυνσης. Αυτή η καριέρα φαίνεται να έχει μακροπρόθεσμες δυνατότητες, υπό την προϋπόθεση ότι ο προγραμματιστής μηχανών είναι σε θέση να συμβαδίσει με την εξέλιξη της τεχνολογίας.