Job Description
This role will remotely monitor changes in pulmonary artery (PA) pressure, an early indicator of the onset of worsening heart failure, to aid physicians in preventing worsening heart failure, lower heart failure mortality rates, and improve quality of life for our heart failure patients. The role is responsible for the design, development, and implementation of device software for new products and changes and improvements to device software for existing products. The Staff Embedded Software Engineer will plan, lead, and execute technical and cross-functional project work that may include efforts in various phases of medical device product development, including design and development planning, requirements definition, product development, risk analysis, supporting test protocol development, and complaints investigation. Will work with cross-functional teams – Quality, regulatory, EE, Systems, product performance group, and Clinical engineering teams.
Responsibilities:
Technical leadership for the device software development effort for a medical device.
Perform software unit requirement analysis.
Prepare software unit architecture and designs.
Implement software units, perform peer code review, and create software unit tests.
Detect, report, investigate, disposition, and fix product defects.
Assist with escalated customer complaints investigations.
Performing timely, detailed CAPA engineering tasks like assessing issue descriptions, reviewing CAPA data sources, assisting with root cause analysis, and quality problem-solving.
Work with cross-functional teams – Quality, regulatory, EE, Systems, and Clinical teams.
Follow established guidelines for and participate in the review of product engineering artifacts (e.g., specifications, designs, test descriptions, implementations, tests, records, reports, etc.).
Assist in the preparation and review of product and software development plans and reports as required.
Under minimal direction, participate in the review and update of system specifications, designs, test descriptions, risk analysis, verification test procedures, and related documentation.
Travel- approximately 5-10%
Required Qualifications:
Bachelor's degree in software engineering, Computer Science, or a related discipline.
7+ years of overall experience in software product development.
C/C++ language embedded software experience.
GUI design and development experience with Qt/QML.
Operating systems like Linux or RTOS.
Experience with hardware, MCU development kits, and electrical test equipment.
Experience with selecting the best MCU for a product.
Experience developing test cases in C++ GTest framework or similar frameworks.
Experience developing test cases in C Ceedling or similar frameworks.
Understanding and appreciation of SDLC process and tools (e.g. JIRA, Bitbucket, Confluence, DOORS, CMake.)
Experience performing risk management analysis of software (e.g. SW FMEA techniques)
Proven collaboration with cross-functional/multi-disciplinary teams.
Familiar with good documentation practices (software Design, data analysis, and reports)
Excellent verbal, written, and interpersonal communication skills
Preferred Qualifications:
Advanced degree in software engineering, Computer Science, or a related discipline, or related discipline with 10 years of work experience.
Experience with static code analysis tools such as Coverity.
Experience working in an Agile development environment.
Experience with Agile development methodologies.
Experience working with BLE and NFC.
Experience with Class II or III implantable medical device software development.
5+ years in the medical device industry
Strong knowledge of FDA and international regulatory requirements for medical device software
Knowledge within the medical device industry including IEC 62304 quality requirements and regulatory requirements or similar regulated experience
Full-time