Description:
As a member of the engineering services team, the Embedded and Systems Software Engineer III will solve complex problems and participate in the specification, design, prototyping and testing of a diverse range of tooling, fixtures, design for manufacturability projects, and other customer product design needs. Under the direction of the Electrical and Software Systems Engineering Manager, the engineer in this role will be performing design tasks of a complex technical nature requiring investigation of new technologies, and applying engineering design principles and practices.
Responsibilities:
With guidance, and at all times following the Cogmedix Design Controls compliant process and 21 CFR 820.30, define software engineering design requirements and develop specifications in accordance with customer expectations and requirements.
Critically review and understand software engineering design requirements and specifications as they pertain to a specific project.
Design complex software systems for use within, and associated with, medical device systems.
Develop software tools to be used with manufacturing and testing of medical devices.
Identify and analyze design problems to achieve optimal solutions that satisfy cost and technical requirements using both internal and external technical resources.
Work with the electrical engineering team to develop innovate microcontroller/microprocessor solutions for embedded medical devices.
Understand and implement simple and complex interfaces with embedded circuitry.
Create and refine common software libraries that will be used as a basis for future software designs.
Interface and coordinate with senior software engineers as well as electrical, mechanical, industrial design and manufacturing engineering teams.
Work with the customer and industrial designers to develop intuitive and streamlined user interfaces to be used with medical devices.
Assume ownership and continuously improve the software design control document templates.
Author and maintain software design control documents pertaining to software design efforts.
Prepare and complete engineering change order packages.
Develop, debug, verify and validate engineering prototypes against specifications.
Contribute to risk assessment of software and system design, including generation of FMEAs.
Prepare and release required design documentation to support release to customer for review.
Provide support for existing products in production as required.
Create and communicate project tasks, deliverables, and manage time to meet project deadlines within costs. This includes reporting pertinent information at key milestones through clear, concise oral and written communications with customers and internally.
Essential Requirements:
Positive attitude, self-motivator, and tenacious follow up required.
Superior customer service attitude.
Excellent teamwork, communication, and interpersonal skills.
Direct experience working in an ISO regulated environment. ISO 13485 certified preferred.
Ability to create, design and solve engineering problems with assistance from more senior staff.
Demonstrated ability to decompose engineering challenges into actionable task lists.
Ability to draw conclusions and make recommendations based on technical inputs from multiple and varied sources.
5-10 years of design/development experience. Experience with medical devices and robotics highly desirable.
Bachelor’s degree in Computer Science required or equivalent years of experience.
Ability to thrive in a fast paced team setting with engineers, technicians, and manufacturing personnel.
Working experience with bare-metal and RTOS software implementations. Direct experience with ThreadX or Microsoft Azure RTOS strongly required.
Expertise in embedded C, C and C++ required. Working knowledge in at least 2 other programming languages, such as Python or JAVA, desirable.
Experience working with vendor specific IDEs required. Direct experience with MCUXpresso, or a similar Eclipse based IDE, desirable.
Able to setup programming environments specified by the project electrical hardware required. This includes setting up the IDE tool, the SDKs, BSPs, and backup repository.
Ability to work with Git repositories and to follow to the Git protocols required.
Direct experience setting up and maintaining autonomous regression test environments required.
Detailed working knowledge of software design methodologies. Experience with Agile scrums and sprints desirable.
Able to read and understand electrical schematics required as well as the ability to instantiate and work with common embedded communication buses such as I2C, SPI, USB, etc…
Ability to work with the electrical engineering team to perform initial power-up, debugging and hardware verification required. Experience developing autonomous test fixtures strongly desired.
Some experience with ERP/MRP and Data Management systems for documentation revision control preferred. Omnify PLM experience beneficial.
Cogmedix is an Equal Opportunity Employer. Cogmedix does not discriminate on the basis of race, religion, color, sex, gender identity, sexual orientation, age, non-disqualifying physical or mental disability, national origin, veteran status or any other basis covered by appropriate law. All employment is decided on the basis of qualifications, merit, and business need.