Job Description

Primary Function of Position

Our Servo Frameworks and Simulator team is responsible for the real-time software infrastructure that supports critical performance, safety and user-facing features of the da Vinci™ Surgical System, Intuitive’s flagship product. Our real-time software includes robotics frameworks, infrastructure for motion control algorithms, audio intercom and system sounds, data streaming and logging, and platform support for our next-generation da Vinci™ product line. Our team occupies an exciting intersection of real-time architecture, feature development, and demonstration of product safety and reliability.

The successful candidate must excel in a cross-functional environment, be able to drive to solutions from rough requirements, and have a commitment to high product quality. They must demonstrate ownership of their areas of responsibility and of the overall product. A strong sense of shared responsibility and shared reward is required. A demonstrated experience and comfort working with C++ in an embedded environment is required.

Essential Job Duties

  • Design and develop product-focused, robust, efficient, and elegant C++ software in a heterogeneous, multi-processor real-time-embedded environment.
  • Lead efforts to modularize and unify robotics software frameworks across multiple platforms and product lines.
  • Leverage systems software building blocks to provide software functionality for multiple Intuitive Surgical robotic systems, maximizing flexibility and modularity while maintaining peak performance.
  • Analyze and quantify overall system performance and safety, including verification of adherence to specifications as well as identification of improvement opportunities.
  • Extend existing tools and create new tools to support such analysis efforts.
  • Interface and collaborate effectively and respectfully with other teams, including Platform Software, Hardware, System Analysis, System Test, User Interface Software Engineering, Manufacturing and Clinical Engineering.
  • Participate in product risk analysis, defining requirements, implementing mitigations, and drafting and executing verification tests.
  • Contribute to multiple areas of software development, including but not limited to the following:
    • design and development of robotic frameworks and middleware
    • configuration and monitoring of custom motion control hardware.
    • real-time processing performance analysis.
    • extension of current processing frameworks to new processors and hardware designs.
    • design, development, and extension of offline hardware simulation environments to facilitate rapid software development and testing.
    • bring-up of research prototypes used to evaluate new product concepts.
    • design and development of hardware / software diagnostic tools.
    • apply appropriate inter-thread or process communication software design principles.
Read Full Description
Confirmed 14 hours ago. Posted 18 days ago.

Discover Similar Jobs

Suggested Articles