The Principal Software Engineer will be part of a team of talented software developers in radiotherapy treatment delivery, planning and medical imaging. The candidate will work on embedded system layers, safety systems, and embedded software associated with all aspects of the RefleXion radiotherapy system. The successful candidate will be a strong technical team member with a deep grounding in sound medical software development practices.
The candidate must demonstrate a deep and broad knowledge of architecting distributed real time software systems.
The candidate must have fully architected at least one software system of sufficient complexity.
The candidate should be fully conversant with objected oriented analysis and design, design patterns.
The candidate must demonstrate experience in system requirements analysis, use-case analysis, risk analysis, system timing and latency analysis and management, system configuration, data flow, data management and hardware interface design.
The candidate must be fully conversant with standard software development practices and lifecycles and should be familiar with product development processes in the medical device environment including software design, coding, testing, software quality control and release management.
The candidate is required to mentor other senior and junior members of the team and should demonstrate excellent communication and presentation skills.
The candidate must demonstrate leadership qualities in software development – ability to evaluate and manage differing design ideas and in managing conflicting requirements.
MS in CS, EE or related field, Ph.D preferred.
12 - 15 years of experience in embedded software development on an industry standard RTOS.
Must have architected at least one software product of sufficient complexity.
Expert in C++11, STL, scripting.
Expert in algorithms and multithreading.
Expert in object-oriented analysis design, design patterns.
Expert in computer architecture, compute elements, data flow analysis and computational performance analysis.
Must have worked on at least 2 industrial projects involving hardware interfacing.
Expert in debugging tools, performance tuning, monitoring and measuring.
Experience in establishing and maintaining software quality, developing quality control processes, product risk analysis and mitigation.
Excellent communication and presentation skills
Some knowledge of medical imaging.
Understanding of medical device design control concepts and robust software engineering practices related to the medical device industry.
Software development experience governed by regulatory agency processes such as FDA and CE.