Software Developer/ Engineer/ Architect

Senior Embedded Software Engineer

Job Description

BD RCI is seeking a Senior Embedded Software Engineer (ESE) to advance the healthcare experience of user and patients through implementation of robust embedded software solutions for regulated medical devices.

The individual in this position will work in a highly collaborative, cross-functional team to deliver products with best-in-class experience. The role involves working closely with the R&D team to gather functional requirements, architect a solution, and implement the design in C/C++.

Operating within a regulated SDLC environment, candidates should be able to demonstrate robust software design and management practices, including software risk management. Working closely with the V&V team the ESE will assist in realizing the development infrastructure including tools for testing, tracking, and resolution of anomalies.

 

Responsibilities:

  • Collaborate with other engineers and project leaders to define detailed design specifications that satisfy customer needs.
  • Provide design solution recommendations to cross-functional stakeholders.
  • Plan and execute methodologically sound software design and implementation, following BD design processes and meeting regulatory standards (EN 60601, IEC 62304).
  • Architect the embedded development environment and toolchain, using scripting and automation wherever possible.
  • Write clean, portable, structured, and maintainable source code in C/C++.
  • Document and repair errors related to fielded software issues.
  • Perform verification tasks including code reviews, unit testing, and integration testing, using automation and static analysis tools where appropriate.
  • Understand business goals and link them to design directions and product architecture and promote short-term solutions that support long-term product vision and strategies.
  • Bachelor’s degree in Computer Engineering, Software Engineering, or a related field.
  • 7 plus years developing embedded software / firmware.
  • Hands-on experience developing for and on embedded targets, using C/C++.
  • Experience writing multi-threaded code or using embedded OS or RTOS.
  • Experience working with standard protocols and stacks for wired and wireless interfaces.
  • Familiarity with software configuration management and issue tracking tools.
  • Experience designing for and performing on-target testing and debug.
  • Strong interpersonal skills with the ability to collaborate in a multi-disciplinary team.
  • Excellent written and oral communication skills.
  • Should be self-directed with effective time-management skills.

 

Desirable:

  • Experience in medical device software development, or another regulated environment.
  • Experience designing for product security concerns.
  • Experience developing unit tests and using test automation tools.