Intuitive is hiring a

Senior Software Engineer (Real-Time Communication)

Sunnyvale, United States
Full-Time

Primary Function of Position

We seek a 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 solid sense of shared responsibility and shared reward is required.

Essential Job Duties

This position is 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 real-time applications using C, C++, C#, Matlab, and Python on platforms like Linux, Windows, and real-time operating systems.
  • Develop a modular, robust, fail-safe, ultra-low latency embedded streaming application.
  • Build compelling prototypes to demonstrate the technical feasibility and to define the product roadmap.
  • Construct a software pipeline to transmit real-time audio, video, and system data, and integrate it with backend systems, APIs, and services.
  • Participate in software architecture discussions, code reviews, and user studies design.
  • Responsible for unit 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.

Required Skills and Experience

  • Proven track record in building real-time embedded systems, real-time applications, and/or embedded software.
  • Experience with industrial embedded OS (e.g., Yocto, QNX) and cross-compilation is a plus
  • Demonstrated proficiency in C, C++, C#, Python, and MATLAB.
  • Experience with multi-threaded and multi-processor/multi-core systems.
  • Comprehensive knowledge of audio, video codecs, and secure streaming protocols to build a highly reliable and mission-critical system subjected to changing network conditions.
  • Hands-on experience with streaming protocols and frameworks such as UDP, RTP, SRTP, WebRTC, FFmpeg, and turn/stun servers.
  • Experience with publish/subscribe architectures, REST interfaces, and interprocess communications.
  • Proficiency in profiling and debugging system software to optimize performance.
  • Exceptional communication skills and a commitment to collaborative team success.
  • Exceptional programming skills with a deep understanding of software engineering methods.
  • Disciplined approach to debugging with a persistent attitude towards solving problems.

Required Education and Training

  • Master’s degree or above in Computer Science, Computer Engineering, or a similar technical field. Advanced degrees preferred.
  • A minimum of 8 years of experience developing and supporting embedded systems (or 5 years with a PhD).

Preferred Skills and Experience

  • Hands-on engineering experience with proven ability to work effectively in a team environment.
  • Ability to build and maintain relationships across supported organizations.
  • Experience in all phases of the product development lifecycle, including design, implementation, debugging, verification, validation, and transfer to manufacturing.
  • 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 with medical device software development life cycle is a plus
  • Experience designing software products in a regulated industry or for mission-critical applications
  • Experience with concepts of design input, design output, traceability, risk analysis, and mitigations.

Due to the nature of our business and the role, please note that Intuitive and/or your customer(s) may require that you show current proof of vaccination against certain diseases including COVID-19.  Details can vary by role.

Intuitive is an Equal Employment Opportunity / Affirmative Action Employer. We provide equal employment opportunities to all qualified applicants and employees, and prohibit discrimination and harassment of any type, without regard to race, sex, pregnancy, sexual orientation, gender identity, national origin, color, age, religion, protected veteran or disability status, genetic information or any other status protected under federal, state, or local applicable laws.

EEO and AA Policy

We will consider for employment qualified applicants with arrest and conviction records in accordance with fair chance laws.

Preference will be given to qualified candidates who do not reside, or plan to reside, in Alabama, Arkansas, Delaware, Florida, Indiana, Iowa, Louisiana, Maryland, Mississippi, Missouri, Oklahoma, Pennsylvania, South Carolina, or Tennessee.

We provide market-competitive compensation packages, inclusive of base pay, incentives, benefits, and equity. It would not be typical for someone to be hired at the top end of range for the role, as actual pay will be determined based on several factors, including experience, skills, and qualifications. The target salary ranges are listed.

Apply for this job

Please mention you found this job on AI Jobs. It helps us get more startups to hire on our site. Thanks and good luck!

Get hired quicker

Be the first to apply. Receive an email whenever similar jobs are posted.

Ace your job interview

Understand the required skills and qualifications, anticipate the questions you may be asked, and study well-prepared answers using our sample responses.

Senior Software Engineer Q&A's
Report this job
Apply for this job