What are the responsibilities and job description for the Senior Software Engineer - Robotics and Automation position at Jobs via Dice?
Dice is the leading career destination for tech experts at every stage of their careers. Our client, Intrepid Professional Search Group, is seeking the following. Apply via Dice today!
Senior Software Engineer - Robotics and Automation
The Senior Software Engineer will work in the Software Development Department and should have experience developing automation/robotic systems, ideally for laboratory applications. This is a hands-on role developing and supporting automation and robotic systems for laboratory applications, from initial design and prototyping to production and ongoing support. These applications are used in networked, embedded laboratory automation systems. The ideal candidate has a robust understanding of automation technologies, including machine vision, and expertise in Java, Spring Framework, and RESTful Web Services, with a focus on database-backed systems. A wide breadth of understanding of automation technologies is required. For example: experience with servo motors, I/O fieldbuses, machine vision, serial and TCP/IP device interfaces, networking, man-machine interfaces, and process control for multi-step applications is desired. This position requires substantial interaction with multifunctional product development teams and demands strong communications skills.
Duties/Responsibilities:
Senior Software Engineer - Robotics and Automation
The Senior Software Engineer will work in the Software Development Department and should have experience developing automation/robotic systems, ideally for laboratory applications. This is a hands-on role developing and supporting automation and robotic systems for laboratory applications, from initial design and prototyping to production and ongoing support. These applications are used in networked, embedded laboratory automation systems. The ideal candidate has a robust understanding of automation technologies, including machine vision, and expertise in Java, Spring Framework, and RESTful Web Services, with a focus on database-backed systems. A wide breadth of understanding of automation technologies is required. For example: experience with servo motors, I/O fieldbuses, machine vision, serial and TCP/IP device interfaces, networking, man-machine interfaces, and process control for multi-step applications is desired. This position requires substantial interaction with multifunctional product development teams and demands strong communications skills.
Duties/Responsibilities:
- Design/develop/support application software for automation equipment, including liquid-handling and instrument-tending laboratory robots.
- Work with Manufacturing Engineering to write bring-up, test and diagnostic software for automation equipment.
- Collaborate with Product Marketing, Engineering Design, and end users to develop application requirements.
- Contribute to the development of core tools, in Java and other software environments, to simplify application programming.
- Design, implement, and maintain application specific user interfaces, web services, backend database systems and/or performance metrics.
- Work with Customer Care to help troubleshoot field service/production support issues.
- Participate in code reviews, technical discussions, and process improvement initiatives to elevate software quality and team efficiency.
- Develop within an ISO 13485 Quality environment.
- Other duties as assigned.
- BS Computer Science, Engineering or other relevant degree or equivalent experience.
- 3 - 10 years experience developing application-level software for laboratory and/or industrial automation.
- Hands-on experience with industrial automation, robotics, pneumatic actuators, sensors, and servo motors.
- Experience with Java and/or another object-oriented language.
- Background in object-oriented design methodologies.
- Experience with embedded and/or real-time Java.
- Experience with Eclipse and/or VS Code IDE(s) with SVN, Maven and Nexus module management.
- Experience with GIT, and GIT Hub.
- Knowledge of Java-based frameworks a plus, specifically Spring, Spring Boot and Hibernate JPA.
- Experience with containerization (Docker, Kubernetes) is a plus.
- Experience creating drivers to interface 3rd party equipment a plus.
- Experience with relational and/or NoSQL database architecture a plus.
- Experience developing machine vision algorithms, including inspection vision, guidance vision, and general machine vision technologies.
- Proven ability to develop and integrate vision-based algorithms for robotic guidance, quality inspection, and real-time feedback.
- General knowledge of laboratory procedures in life sciences and diagnostic laboratories a plus.
- Demonstrated success in using strong communication skills to thrive in collaborative, multi-discipline, cross-functional environments.
- Experience with OpenJDK 11 or later a plus.
- Experience in Java messaging (ActiveMQ or equivalent) a plus.
- Experience in Web Services a plus.
- Experience in a major Database package such as MySQL, Oracle, IBM Netezza, MariaDB, Casandra, or MongoDB a plus.
- Experience with production metrics/big data a plus.
- Experience in ETL and other large data migration projects a plus.
- Experience in Java Persistence (JPA) or equivalent a plus.
- Experience with machine vision a plus.
- Understanding of CSS styling, HTML5 and Angular2 experience a plus.