Der HMI-Programmierer befasst sich bei seiner Arbeit mit dem Human Machine Interface. Hinter dem mit HMI abgekürzten Begriff verbirgt sich die deutsche Bezeichnung "Mensch Maschine Schnittstelle". Das Human Machine Interface verwendet beispielsweise die Automatisierungstechnik. Die Schnittstelle ermöglicht das Bedienen der eingesetzten Maschinen durch das verantwortliche Personal. Daneben dient das HMI zum Eingreifen in die Fertigungsprozesse sowie zum Beobachten der ausgeführten Vorgänge.
Die Aufgabe des Programmierers liegt im Entwerfen eines verständlichen, leicht bedienbaren Interfaces. Die Mitarbeiter, die später mit dem Interface arbeiten, besitzen keine Kenntnisse in der Programmiersprache. Das setzt ein intuitiv verständliches HMI voraus. Der konkrete Aufbau der Schnittstelle variiert und hängt von der jeweiligen Maschine ab. Entsprechend unterscheidet sich die Art, in welcher die Maschine dem Benutzer Informationen bereitstellt. Diesbezüglich sind mehrere Alternativen denkbar. Einige Anlagen informieren mithilfe eines Visualisierungssystems, das auf einer Software basiert. Andere Maschinen besitzen Bedienpulte mit Tasten, Anzeigenfelder und Signalleuchten. Der HMI-Programmierer befasst sich im Zuge seiner Arbeit bevorzugt mit softwarebasierten Lösungen.
Der Programmierer des Human Machine Interfaces übernimmt eine verantwortungsvolle Aufgabe. Er trägt mit seiner Arbeit entscheidend zum Gelingen und Scheitern eines technischen Produktes bei. Der Erfolg hängt neben Kriterien wie der Qualität, der Lebensdauer oder dem verlangten Preis von der Bedienbarkeit und Benutzerfreundlichkeit ab. Der Benutzer kommt zu allererst mit der Schnittstelle in Kontakt. Erst anschließend testet oder nutzt er die eigentliche Funktionalität des Produktes. Ein benutzerfreundliches Interface erhöht das Interesse vor dem Kauf. Dasselbe gilt für die Zufriedenheit des Kunden nach der Investition. Geeignete Entwicklungswerkzeuge unterstützen den Programmierer bei den anfallenden Aufgaben. Sie helfen, den Aufwand sowie das Risiko zu reduzieren.