SR SOFTWARE ENGINEER - C++/QNX
Our client is building the future of medical robotics. This well funded, high potential startup is developing a next generation robotic platform that targets early diagnosis and treatment of patients across multiple disease states. This exciting role comes with a Great Salary, an Amazing Quarterly Bonus Program, and Equity/Stock Options.
This engineer will play a key role in the design and development of the real-time C++ software infrastructure for the R&I motion control solutions for our next generation Robotic System. They will work closely with control software, systems and instrument engineers as well as engineers from other groups to implement architecture decisions and lead and influence device software solutions based on product and user requirements.
We are looking for a candidate who has done it all, who enjoys and thrives working in a small start-up team on exciting engineering projects, and is ambitious, self-motivated, curious and passionate about revolutionizing the world of medical robotics.
- Designs and develops quality real-time multi-threaded software in C++ for motion control systems over EtherCAT supporting synchronous as well as asynchronous device communication protocols.
- Designs and develops event driven state machine based software modules with motion control hardware interfaces and clean software APIs for a distributed multi-platform system.
- Works and collaborates multi-functionally with product, systems, mechanical and clinical engineers in person and remotely to design and develop robust applications for the robotic platform.
- Provides excellent communication of technical and project level issues as they arise to support the needs of the entire R&I team.
- Integrates, tests and debugs real-time software solutions deployed on systems and bench setups.
- Proficiency in building test automation setups in Python.
- Leads, receives, and provides continuous Code Reviews in peer-reviewed source code development using git and web-based platforms.
- Bachelor's degree in Computer Science, Electrical Engineering or equivalent.
- Strong background and experience (3+ years) in building robust real-time motion control applications interfacing distributed multi-platform software systems (C++, QNX).
- Strong understanding of state-machine based design and event driven architectures preferably in robotic endoscope articulation control.
- Experience with the EtherCAT master stack development for the motion control robotic system that provides jitter free real-time control.
- Excellent verbal and written communication and documentation skills.
- Proficiency in multi-platform C++ development on QNX, Linux, Windows.
- Experience with rapid prototyping and building test automation setups in Python.