The Senior Software Engineer will be the lead programmer responsible for the controls and HMI of ExOne’s metal 3D printers. This role will work with all functional aspects of the software including hardware communication, operator interface, and 3D model manipulation and visualization. ExOne’s printers use either Siemens PLC or motion controllers, depending on the platform. Working on the metal engineering team, this role will be responsible for optimizing and maintaining both legacy and new print platforms. The Senior Software Engineer will coordinate with the leaders of other engineering disciplines and departments to ensure success implementation of printers.
Responsibilities include, but are not limited to, the following:
- Develop and implement code for controlling 3D printers
- Implement best practices for software version control and documentation
- Develop control system software
- Integrate electro-mechanical systems so they work seamlessly together
- Test and debug source code
- Work closely with engineering and R&D teams to add features to printers
- Assist with maintaining and optimizing code for existing 3D printers
- Willingness to work beyond core business hours, if necessary, to minimize business
- interruption during planned or unplanned system modifications
- Devise and perform tests to identify the root cause of problems
What You Need to Bring to the Table
- Bachelor’s degree in Software Engineering, Computer or Electrical Engineering, Computer Science, Robotics or a comparable technical degree. Advanced degree preferred.
- 5+ years of motion control or Siemens PLC programming experience on industrial systems
- Familiarity developing machine controls for complex systems, experience with AM a plus
- Excellent communication skills, both written and verbal
- Bonus qualifications
- Experience with the OpenGL API
- Knowledge of the Polygonica library
- Experience leading a diverse software/controls engineering team.