Job Description
Overview
The Principal Automation Software Engineer will be a hands-on role on a small team of test automation engineers developing automated tests for the next generation patient monitoring platform. This position requires a deep understanding of solid design principles, development practices and test verification knowledge. The role will work closely with cross-functional groups such as Systems, Hardware, Verification, Electrical and Software Engineering.
The test automation development includes the patient monitoring platform of the next generation patient monitor in an enterprise of networked patient monitors physically located on multiple hospital floors communicating with several central stations.
The successful candidate for this role will have test automation leadership and development experience in agile software development environment.
Responsibilities
1. Work with the test automation team to review and derive required automation tests from requirements related to patient monitoring platform
2. Lead the cross-functional reviews of software requirements, architecture, software design, connectivity interface design and user interface design.
3. Lead the test automation component design efforts. Understand and design to existing interface specifications.
4. Plan and maintain test automation backlog for the test automation team.
5. Write, debug, review and document test automation software.
6. Lead the definition of test architectures, designs, tools and workflows to be shared with the test automation team members
7. Ensure on-time delivery of test automation software including design documentation and other required artifacts.
8. Mentor other engineers to help them grow both technically and professionally.
9. Duties may be modified or assigned at any time to meet the needs of the business.
Qualifications
10. Bachelor of Science degree in Computer Engineering, Software Engineering, Computer Science or a related Engineering discipline, or equivalent experience.
11. 6+ years of relevant software experience
12. 2+ years of test automation leadership
13. Strong experience with Python or other scripting languages
14. Expert level knowledge of Object-Oriented Design and Design Patterns
15. Strong understanding of software testing concepts and methodologies
16. Strong experience at least one automation testing tool and best practices
17. Strong understanding of Continuous Delivery and Agile development
18. Mastery of tools supporting the software development lifecycle, such as source control, CI/CD platforms, requirements management, and defects tracking
NICE TO HAVE:
19. Experience with Qt/QML
20. Demonstrated experience with embedded Linux application development
21. Experience with Squish automation
22. Experience with Selenium
23. Experience working in a regulated development environment (finance, medical, defense, aerospace, etc.) is a plus.
24. Experience in product development of medical devices under Design Control (21 CFR Part ) and ISO and developing to and compliance with IEC is a big plus.
25. Experience in the development of integrated (hardware and software) devices.
26. Experience with scripting languages (e.g., Bash, PowerShell).
27. Experience with Containerized environments and virtual machines
28. Experience working effectively with international teams in Europe, India and the US.