Embedded Software Engineer
Listed on 2026-09-20
-
Software Development
Embedded Software Engineer, Software Engineer, Embedded Systems/ Firmware/ IoT
Company Description
It started with a simple idea: what if surgery could be less invasive and recovery less painful? Nearly 30 years later, that question still fuels everything we do a global leader in robotic-assisted surgery and minimally invasive care, our technologies—like the da Vinci surgical system and Ion—have transformed how care is delivered for millions of patients worldwide. We're a team of engineers, clinicians, and innovators united by one purpose: to make surgery smarter, safer, and more human.
Every day, our work helps care teams perform with greater precision and patients recover faster, improving outcomes around the world. The problems we solve demand creativity, rigor, and collaboration. The work is challenging, but deeply meaningful—because every improvement we make has the potential to change a life. If you’re ready to contribute to something bigger than yourself and help transform the future of healthcare, you’ll find your purpose here.
Job Duties
- Gather high-level cross-functional requirements, ranging from customer-facing, clinical and safety requirements, and cybersecurity requirements.
- Collaborate with cross-functional stakeholders on the definition of development plans and timelines, that combine technical needs with schedule and resource need.
- Identify interfaces and communication requirements between hardware and software components, architect modular and testable software that supports the system high-level behaviors.
- Support prototyping and development activities of novel surgical robotic platforms, by leveraging and adapting the existing infrastructure that is shared across all Intuitive robotic systems; learn from each iteration, refine and extend code quickly and methodically.
- Lead formal risk analysis; identify additional hardware requirements and develop software mitigations.
- Act as software lead in the high-level specification, bring-up and integration of new custom PCAs and FPGA IP.
- Perform detailed design, development, documentation and support verification activities of embedded software and supervisory state machines, in compliance with regulatory requirements and Intuitive's internal guidelines.
- Contribute broadly to multiple areas of software development for our distributed multi-processor systems, including but not limited to video and servo hardware control and monitoring, inter-processor communication subsystem development, system diagnostic and service application development, user interface development.
- Apply high level and specialized industry expertise that results in new innovations and problem-solving approaches that can be leveraged across multiple products.
- Represent your project ably in interactions externally with key customer collaborators and internally within the company.
- Bachelor’s degree or above in Computer Science, Electrical Engineering or Computer Engineering, or similar technical field.
- A minimum of 12 years of experience in developing and supporting embedded systems (or 8 years with a Master’s degree, or 5 years with a PhD degree).
- Fluent in designing and developing mission-critical cross-platform code in C++ or C, with focus on embedded and real time systems (e.g. QNX).
- Fluent with embedded compute architectures, and their development and testing methodologies, including hardware debugging.
- Fluent with communication protocols such as TCP/IP, CAN, serialization protocols.
- Fluent with memory management, concurrency, synchronous and asynchronous event handling.
- Working knowledge of Python or other scripting languages for automation, diagnostics and testing. Familiarity with Vivado and other FPGA development tools.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).