Staff Software Engineer
The individual in this role will support activities related to the design, development, and manufacturing of our equipment products.
- Lead major projects, or phases of projects
- Resolve advanced and complex technical challenges
- Create software architecture (embedded, O.S., and Application layer) for complex electromechanical devices
- Software/sensor algorithm development and optimization and/or Machine Learning Algorithm development.
- Perform Risk Analyses, including Fault Tree Analysis (FTA), Failure Mode and Effects Analysis (FMEA), and Cybersecurity Analysis in compliance with applicable standards
- Lead Risk Management activities to ensure compliance with applicable design- and process-related standards
- Lead the product development team in the adoption and use of best practice software design methodologies
- Debug designs
- Provide technical support for product development, as well as systems integration and testing
- Investigate the feasibility of new projects, systems, or approaches
- Mentor other engineers in good coding practices, debugging techniques, etc.
- Work with Quality Assurance to maintain an approved internal Quality System that meets the requirements of GMP’s, QSR, ISO 13485, and IEC62304
- BS in Software Engineering, Electrical Engineering, or equivalent
- MS/ME in relevant disciplines is strong preferred
- 10+ years of experience in software product engineering and development
- Hands-on technical leader/mentor for a team of senior and mid-level engineers
- C and/or C++ Language Skills
- Must have Medical device or other safety critical device development experience
- Able to generate thorough and comprehensible documentation - requirements through software, as well as risk documentation.
- Experience with embedded systems development
- Experience with sensors, CAN, A/D, embedded operating systems, multiple processor systems
- Proven ability to run major software development projects from concept to manufacturing
- Proven advanced technical knowledge in software development methodologies
- Demonstrated expert analytical and design skills
- Proven knowledge of project lifestyles, software development environments, and source control techniques