Principal C++ Software Engineer - Med Device
Boston, Massachusetts
Full Time
$70/hr - $80/hr
Our client is an innovative, venture-backed medical technology company developing next-generation imaging solutions to enhance surgical precision and improve patient outcomes. They are seeking a Principal Software Engineer with deep expertise in C++, CUDA, and image processing to help lead development of real-time imaging software for surgical applications.
Position Summary:
This role will focus on designing and optimizing software systems that utilize visible and near-infrared imaging technologies. The ideal candidate will bring a strong background in C++ development, GPU programming, and real-time image/video processing — along with leadership capabilities to guide a small, fast-moving team in a regulated medical device environment.
Key Responsibilities:
-
Optimize imaging and video processing algorithms using NVIDIA CUDA.
-
Collaborate with imaging scientists to implement and refine novel algorithms using OpenCV.
-
Develop applications using C++ and C# in Visual Studio, with additional work in WPF and DirectX/shader development.
-
Define and trace software requirements across the development lifecycle.
-
Lead and mentor junior software engineers while guiding architectural decisions.
-
Collaborate with QA/RA teams to support V&V efforts and ensure regulatory compliance.
-
Track and resolve software issues through tools like JIRA.
-
Report project status and technical progress to senior R&D leadership.
Required Skills and Experience:
-
10+ years of software development experience, preferably in medical devices or other regulated industries.
-
Proficiency in C++, C#, .NET, and Python.
-
Strong experience with CUDA, OpenCV, and image processing algorithms.
-
Hands-on experience with NVIDIA Jetson platforms is a plus.
-
Familiarity with IEC 62304 or similar standards for regulated software development.
-
Experience with version control (Git) and issue tracking tools (JIRA).
-
Background in AI/ML frameworks (TensorFlow, PyTorch) is a bonus.
-
Excellent problem-solving, communication, and technical leadership skills.
Education:
Bachelor’s degree in Computer Science or a related field is required. Master’s or PhD preferred.