Principal Software Engineer (HYBRID)

Posted:
7/30/2024, 5:00:00 PM

Location(s):
Portage, Michigan, United States ⋅ Michigan, United States

Experience Level(s):
Expert or higher ⋅ Senior

Field(s):
Software Engineering

Work Flexibility: Hybrid

Who We Want:

  • Analytical problem solvers. People who go beyond just fixing to identify root causes, evaluate optimal solutions, and recommend comprehensive upgrades to prevent future issues.
  • Curious learners. Engineers who seek out cutting-edge research and information to expand and enhance their ability to develop products.
  • Goal-oriented developers. Keeping the customer and system requirements squarely in focus, people who deliver safe and robust solutions.
  • Collaborative partners. People who build and leverage cross-functional relationships to bring together ideas, information, use cases, and industry analyses to develop best practices.
  • Motivated product launchers. Engineers who bring strategic direction and drive for execution to ensure products are developed and launched with precision.

What You Will Do:

  • As a Principal Software Engineer, you will develop embedded software devices for use by hospital staff to allow them to plan and perform their procedures.
  • You will work closely with hardware and design team’s application development on a Linux Platform.  
  • Be a key contributor to the software development process for embedded medical devices.
  • Lead architecture development of real-time and non-real-time software, owning the design, implementation, and testing of software modules, and performing associated software development tasks (requirements development, configuration management, issue/bug tracking, and risk management).
  • The opportunity to collaborate is a key part of the role including with electrical (hardware) engineers on defining HW requirements, with other SW engineers on developing protocols for interfacing with multi-processer environments, the QA department on SW verification testing, and the project management team on breaking down work, scheduling, risks, and project updates.
  • Participate in the greater Stryker software community to continually improve the way we work.
  • Lead and mentor technical team in design and development of complex embedded software devices

What You Will Need:

Basic Qualifications:

  • Bachelor’s Degree in Engineering, Computer Engineering or related field
  • 8+ years of relevant experience developing production software in a team environment using C or C++, or a similar language
  • Understanding of software reliability, fault detection/isolation, and performance algorithm techniques.
  • Experience developing software to control multi-actuator, electro-mechanical systems
  • Experience in HW/SW development for embedded Linux systems.

Preferred Qualifications:

  • Knowledge of standard communication data protocols (UART, USB, I2C, WiFi)
  • Experience in GUI application development for embedded device.
  • Experience in developing Software according to regulated standards for the Software Development Life Cycle within the Medical Device industry
  • Experience leading a team of 2-5 other developers within Agile methodologies.
  • Experience managing an embedded software build environment involving multiple compilers, with branching and versioning.
  • Experience in planning, organizing and communicating short-term and long-term project milestones


 

Travel Percentage: 10%

Stryker Corporation is an equal opportunity employer. Qualified applicants will receive consideration for employment without regard to race, ethnicity, color, religion, sex, gender identity, sexual orientation, national origin, disability, or protected veteran status. Stryker is an EO employer – M/F/Veteran/Disability.

Stryker Corporation will not discharge or in any other manner discriminate against employees or applicants because they have inquired about, discussed, or disclosed their own pay or the pay of another employee or applicant. However, employees who have access to the compensation information of other employees or applicants as a part of their essential job functions cannot disclose the pay of other employees or applicants to individuals who do not otherwise have access to compensation information, unless the disclosure is (a) in response to a formal complaint or charge, (b) in furtherance of an investigation, proceeding, hearing, or action, including an investigation conducted by the employer, or (c) consistent with the contractor’s legal duty to furnish information.