Skip to content

Search jobs inside your AI agent.

Grok Bot

Connect

Horizon Surgical Systems

Senior/Staff Robotics Software Engineer

Posted Updated
Discussion

Description

  • In your role as a Robotics Software Engineer at Horizon Surgical Systems, you will contribute to the architecture and design of a cutting-edge surgical robotics system, implementing and verifying mission-critical software modules
  • The ability to enforce deterministic timing, and fail-safe behaviors, in the controls software is paramount to its clinical efficacy and regulatory approval. You will be responsible for optimizing the end-to-end latency and throughput of control software by designing a high-performance controls platform
  • Software Implementation:
  • Designing, implementing, and maintaining robot controls software that provides real-time-safe data transfer and observability mechanisms
  • Optimizing the controls data pipeline across PCs with network and DDS QoS configuration
  • Bridging the timing gap between non-deterministic IPC mechanisms and deterministic event-loops
  • Collaborating with control algorithm engineers on optimizing the performance of their control loops
  • Integration & Collaboration:
  • Collaborate with cross-functional teams to ensure high performance of software modules
  • Engage in pair programming, code reviews, and design discussions to maintain high coding standards
  • Testing & Reliability:
  • Test your software with and without hardware, implementing the appropriate virtual fixtures where it saves time and aids in automation
  • Strive for the simplest possible, most easily testable software design, to make unit- and integration-test coverage seamless
  • This is an exciting opportunity to join a high-tech startup that is poised to revolutionize surgical robotics in ophthalmology
  • Bachelor’s, Master’s or Ph.D. degree in Computer Science, Computer Engineering, Robotics, Electrical Engineering, or a related field
  • Experience with kinematics and rigid-body dynamics is helpful for collaborating on control algorithms which use the servo drives that you integrate
  • 5+(Senior)/8+(Staff) years of C++ robot controls software development
  • 5+(Senior)/8+(Staff) years deploying and testing software in a Linux environment
  • Prior experience working on mission-critical software
  • Experience with an observability framework is helpful, particularly one tailored to robotics telemetry data
  • Ability to independently implement high-performance Linux systems software
  • Quantitative profiling and performance optimization experience (either using a tool like gprof or instrumenting software with your own tooling)
  • Prior experience with embedded C/C++ is useful
  • Knowledge of DDS, or an alternative asynchronous structured IPC mechanism (e.g., gRPC)
  • Ability to analyze latency and jitter of high-frequency data in a distributed system
  • Experience with motor control for serial robotic manipulators is preferred
  • Experience with software deployment procedures (configuration management, containerized builds, etc.) is preferred
  • Prior experience with medical device development is a plus
  • Strong proficiency in modern C++ (at least C++11) is a must
  • Proficiency with implementing and evaluating software architecture in the context of latency-minimization, determinism, and reliability
  • Good communication skills to collaborate with interdisciplinary teams, including software engineers, electrical/mechanical engineers, and product managers
  • Strong analytical, problem-solving, and organizational abilities
  • Ability to work on-site for hands-on software integration
  • Comfortable working in a lab or workshop environment alongside surgical robotic systems
  • Ability to thrive in a fast-paced, dynamic work environment and adapt to new challenges

Skills

What Staff Software Engineering jobs ask for — and how much of it you have →
Apply

See also

Software Engineering jobs by country — openings, pay and top skills →