Summary of Major Responsibilities
The Senior Systems Software Engineer works with the Systems Development team to design, develop, and test software used in medical devices or lab automation systems. Additional responsibilities include the development of internal software tools and databases used in R&D, product development, or quality control.
Essential Duties and Responsibilities
Include but are not limited to the following:
- Participate in all aspects of the software development lifecycle.
- Translate product requirements and quality system requirements into software specifications.
- Review and create software design control documents with team input.
- Architect software driven systems.
- Document software designs.
- Integrate software with hardware, sensors, and motion control.
- Code software methods and modules with associated unit tests.
- Develop and write test plans to ensure that product requirements, quality system requirements, regulatory requirements, and design specifications have been met. Execute test plans at module/unit and system levels.
- Develop and maintain databases.
- Optimize algorithm parameters and software implementation.
- Create internal software tools to enhance data analysis and data management productivity.
- Troubleshoot system issues and failures.
- Provide technical leadership.
- Mentor junior engineers and interns to develop their skills. Facilitate training of junior engineers on current software and software development practices.
- Work collaboratively in cross-functional teams.
- Work with external vendors to verify and validate software and hardware platforms.
- Other duties as assigned.
Occasional Duties and Responsibilities
- Occasional travel may be required.
- Ability to use computers daily in an interactive manner for extended periods of time, up to 8 hours per day.
- Ability to travel (by land and air), both domestically and internationally, on occasion.
- Ability to frequently and accurately communicate with employees, customers, and vendors in person, via the telephone or by email.
- Constant walking or motion to coordinate work and interact with co-workers.
- Ability to occasionally lift and move instruments weighing up to 50 lbs.
- Proficient with the Microsoft technologies such as C#, WPF/UWP, and the Visual Studio development environment. Alternatively, proficient with embedded software development technologies.
- Critical design analysis and troubleshooting.
- Demonstrated professional written and verbal communication skills.
- Knowledge of the software lifecycle for a medical device preferred.
- Experience in medical device development highly preferred.
- Demonstrated experience with SQL and SQL Server desired.
- Experience in algorithm coding and robotics desired.
- Past experience mentoring junior colleagues or leading productive teams desired.
Education and Experience
- Bachelor’s degree in software engineering or science/technology field with relevant industry experience.
- Seven or more years of experience following quality system/design control in medical device or related area.
- Track record of contributions to successful software launches, from initial concept to customer release.