Intuitive-posted 10 months ago
$178,800 - $257,200/Yr
Full-time • Senior
Onsite • Sunnyvale, CA
Miscellaneous Manufacturing

We seek a Embedded Software Engineer to join the Future Forward Research group at Intuitive Surgical. Our group's role is to explore new promising technologies for future products and services in the emerging computer- and robot-assisted medical interventions field. As a Senior Software Engineer, you will work on the design and development of system software and digital applications for the latest hardware targeting end-users involved in surgical robotic procedures. The successful candidate must excel in an agile, focused, small-team environment and commit to high-quality research prototypes and supporting infrastructure. A strong sense of shared responsibility and shared reward is required.

  • Responsible for all aspects of system software development, associated tooling, and infrastructure to explore and build a novel telesurgery system.
  • Design, build, debug, and deploy embedded real-time applications using C, C++, C#, Matlab, and Python on platforms like Linux, QNX and Windows.
  • Develop a modular, robust, fail-safe, embedded applications that run on heterogeneous, multi-processor SoC/FPGA/real-time-embedded environment.
  • Build compelling prototypes to demonstrate the technical feasibility and to define the product roadmap.
  • Construct a platform agnostic software pipeline to transmit real time data such as kinetic, audio, video, and system data, and integrate in to embedded system for high performance and through put.
  • Participate in software architecture discussions, code reviews, and user studies design.
  • Responsible for unity testing and integrating the code for function testing, robustness, and reliability.
  • Cross-functional requirements discussions, ranging from customer-facing clinical needs to safety requirements.
  • Translating early requirements into prototype implementations to evaluate and assess a novel and sophisticated robotic system.
  • Apply good software engineering practices to write elegant, maintainable, reusable code.
  • Create documentation for the developed features and techniques that were tried, rejected, or implemented.
  • Proven track record in building real-time embedded systems and real-time applications.
  • Strong problem-solving skills and debugging of complex embedded software and electromechanical systems.
  • Experience in developing for embedded Linux and/or QNX at multiple levels, such as hardware bring-up, drivers, application.
  • Demonstrated proficiency in C, C++, C#, Python, and MATLAB.
  • Experience with multi-threaded and multi-processor/multi-core systems.
  • Experience with communication protocols such as TCP/IP, CAN and serialization protocols such as protobuf.
  • Experience with publish/subscribe architectures, REST interfaces, and interprocess communications.
  • Strong communication skills and a commitment to collaborative team success.
  • Exceptional programming skills with a deep understanding of software engineering principles and methodologies.
  • Disciplined approach to debugging with a persistent attitude towards solving problems.
  • Hands-on engineering experience with proven ability to work effectively in a team environment.
  • Demonstrated experience and comfort with all phases of the product development lifecycle (design, implementation, debug, verification, validation, and transfer to manufacturing).
  • Ability to build and maintain relationships across supported organizations.
  • Knowledge of serial-arm robot kinematics.
  • Knowledge of classical and modern servo control systems.
  • Experience building digital applications interfacing with the latest AI/ML models.
  • Experience designing software products in a regulated industry or for mission-critical applications.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service