Staff Embedded Software Engineer

Stryker•San Jose, CA
•Hybrid

About The Position

Stryker is seeking a Staff Embedded Software Engineer who combines hands-on software development with technical ownership. The engineer will remain actively involved in coding while owning software architecture, integration, and complex technical problem-solving for supported products. The initial focus is on products in the Urology portfolio, with opportunities to contribute to other Surgical Support products, operating room integration, and future product concepts. The role involves developing production software primarily in C++ on Embedded Linux platforms and translating user, clinical, product, and system needs into requirements, architecture, interfaces, and working software. The engineer will drive integration across software, firmware, electronics, sensors, controls, user interfaces, and external systems; investigate complex technical issues; and collaborate with multidisciplinary teams throughout the product lifecycle. The position also supports existing software, early product discovery, feasibility work, prototyping, and technology exploration.

Requirements

  • Bachelor's degree in Computer Science, Software Engineering, Computer Engineering, Electrical Engineering, or a related field.
  • At least 4 years of relevant software engineering experience.
  • Hands-on software development experience using C++.
  • Experience developing and debugging software on Embedded Linux platforms.

Nice To Haves

  • Experience making software architecture and technical design decisions for embedded products or complex software systems.
  • Experience translating product and system requirements into software designs and working solutions.
  • Experience integrating software with hardware, firmware, electronics, sensors, or other system components.
  • Strong debugging and problem-solving skills, including investigating complex issues across multiple technical domains.
  • Working knowledge of .NET Framework and C# sufficient to understand existing code, troubleshoot issues, and support future migration activities.
  • Ability to work independently and take technical ownership of an assigned product or software area.
  • Experience developing software for medical devices, complex electromechanical products, or other safety-critical systems.
  • Exposure to GUI development using Qt/QML or similar technologies.
  • Experience with RTOS-based or other real-time embedded systems.
  • Experience troubleshooting issues spanning application software, firmware, electronics, and overall system behavior.
  • Familiarity with regulated product development, verification, validation, risk management, and design controls.
  • Experience contributing to early product development, feasibility, prototyping, or technology exploration.
  • Experience collaborating across multidisciplinary engineering teams.

Responsibilities

  • Design, develop, debug, and improve production software, primarily using C++ on Embedded Linux platforms.
  • Own software architecture and technical direction for assigned products while remaining actively involved in implementation.
  • Translate user, clinical, product, and system needs into software requirements, architecture, interfaces, and working software.
  • Drive integration across application software, embedded firmware, electronics, sensors, controls, user interfaces, and external systems.
  • Lead complex technical investigations and root-cause analysis using code, logs, instrumentation, and hands-on testing.
  • Make technical decisions and evaluate design tradeoffs while balancing product, system, and software requirements.
  • Partner with Systems, Embedded Software, Electrical, Mechanical, Test, Quality, Regulatory, Manufacturing, and Product Management throughout the product lifecycle.
  • Participate in architecture, design, and code reviews.
  • Support other engineers through technical collaboration and knowledge sharing.
  • Contribute to operating room integration, technology exploration, early discovery, feasibility activities, and prototyping for future products.
  • Support existing software by troubleshooting and understanding legacy application code as products and platforms evolve.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service