Job Description
Job Description
The Principal Vision Software Engineer is a senior, hands-on technical leader responsible for the design, development, and optimization of image processing, computer vision, and imaging software pipelines for next-generation medical devices. This role owns the transformation of raw sensor data into calibrated, quantitative, clinically meaningful information across embedded, desktop, and mobile platforms.
This position serves as the software counterpart to the Sr. Vision Systems Engineer, working closely to co-define end-to-end imaging system performance, from photons at the sensor through real-time processing, analytics, and visualization on embedded processors and mobile applications.
The ideal candidate brings deep expertise in low-level image acquisition and processing (C/C++ on Linux/UNIX), computer vision frameworks (OpenCV and related libraries), embedded systems, and modern mobile platforms (iOS and Android). This role requires strong architectural judgment, hands-on coding ability, and the ability to operate effectively in a fast-paced, prototype-driven, regulated medical device R&D environment.
This position is based in our office in Eden Prairie, MN and relocation assistance is not provided.
ROLES AND RESPONSIBILITIES
Technical Leadership and Architecture:
· Lead the architecture and implementation of image processing and computer vision software pipelines across embedded and mobile platforms for medical applications.
· Define software strategies for image acquisition, calibration, correction, enhancement, segmentation, measurement, and visualization.
· Establish performance targets (latency, throughput, accuracy, robustness) for vision and image processing software.
· Provide technical leadership and mentorship to software engineers working on imaging, vision, and embedded platforms
· Partner with systems, optics, and hardware engineers to co-optimize software and hardware performance.
· Provide technical execution leadership within Agile/Scrum development frameworks, helping translate system- and product-level requirements into well-scoped epics, stories, and implementation plans.
Image Processing and Computer Vision Development:
· Design and implement real-time and offline image processing pipelines including:
o Demosaicing, color correction, white balance.
o Noise reduction, HDR, multi-frame fusion.
o Image registration, stitching, and alignment.
o Segmentation, feature extraction, and quantitative measurement.
· Develop and optimize algorithms using C/C++, OpenCV, and related vision libraries.
· Evaluate and integrate third-party vision and imaging libraries where appropriate.
· Support multispectral, NIR, fluorescence, thermal, or depth-based imaging pipelines as required by the product roadmap.
Embedded and Low-Level Software:
· Develop and maintain Linux/UNIX-based software for image acquisition, sensor control, and data handling.
· Interface with camera drivers, ISP pipelines, and hardware accelerators where available.
· Optimize software for constrained embedded platforms (CPU, memory, power).
· Support bring-up and debugging of embedded imaging pipelines in collaboration with firmware and hardware teams.
· Work with low-level protocols and interfaces (e.g., MIPI CSI-2, I²C, SPI) in coordination with embedded firmware teams.
Mobile Application Development (iOS & Android):
· Design and implement imaging and vision components for mobile applications on iOS and Android.
· Optimize image processing pipelines for mobile SoCs, GPUs, and NPUs.
· Integrate embedded imaging systems with mobile applications via wired or wireless interfaces.
· Ensure consistent image quality, performance, and user experience across platforms.
· Collaborate with UX/UI designers and clinical stakeholders to translate imaging data into intuitive, actionable displays.
Verification, Validation, and Image Quality Assurance:
· Define and execute software-level test strategies for image quality, performance, and robustness in a regulated environment.
· Develop test beds, simulators, and tools for validating vision algorithms and pipelines.
· Analyze large image datasets to guide algorithm tuning and performance improvements.
· Support verification and validation activities to meet product, quality, and regulatory requirements.
· Assist in root-cause analysis of imaging or vision-related product field issues.
Cross-Functional Collaboration:
· Work closely with optical, electrical, mechanical, firmware, systems, and clinical teams.
· Participate in system-level trade studies balancing hardware complexity, software sophistication, and product cost.
· Interface with external partners or vendors providing sensors, compute platforms, or vision libraries.
· Contribute to project planning, technical risk assessments, and development schedules.
· Support cross-functional execution by breaking complex imaging software efforts into actionable Jira epics and stories with clear technical acceptance criteria.
· Collaborate with systems and product stakeholders to estimate effort, identify technical risks, and drive imaging and vision software work to completion using tools such as Jira and Confluence.
Documentation and Compliance:
· Create and maintain clear documentation for vision algorithms, software architecture, and processing pipelines for medical device applications.
· Support regulatory submissions with traceable software documentation and validation evidence.
· Participate in design reviews, risk analyses, and Design History File (DHF) activities.
· Ensure software development practices align with applicable medical device standards (e.g., IEC 62304, ISO 13485).
· Ensure imaging subsystems comply with relevant medical device standards and guidance (e.g., IEC 62471, IEC 60601, ISO 13485).
· Create and maintain clear documentation of imaging designs, test methods, calibration procedures, and validation results.
Stakeholder Engagement:
· Support technical discussions with suppliers, manufacturing partners, and internal stakeholders.
· Assist with product launches, field issue investigations, and post-market support as needed.
· Translate clinical, system, and business requirements into actionable imaging engineering specifications.
MINIMUM EXPERIENCE AND EDUCATION REQUIREMENTS
· Bachelor’s degree in Computer Engineering, Computer Science, Electrical Engineering, Physics, or a related field (Master’s degree preferred).
· 10+ years of experience in image processing, computer vision, or imaging software development (medical device experience strongly preferred).
· Expert-level proficiency in C/C++ on Linux/UNIX systems.
· Strong experience with OpenCV and modern computer vision techniques.
· Proven experience developing and optimizing software for embedded systems.
· 5+ years of experience with camera pipelines, image sensors, and raw image formats.
· Demonstrated proficiency in iOS and/or Android development for imaging or vision-enabled applications.
· Proficiency with Python or similar tools for prototyping, testing, and data analysis.
· Familiarity with real-time performance optimization, multithreading, and memory management.
· Experience working in regulated or safety-critical environments is a strong plus.
· Startup or early-stage product development experience strongly preferred.
· Able to function with urgency in high-pressure, prototype-driven development cycles.
· Excellent verbal, written communication, especially with development and quality teams.
· Demonstrated business acumen with the proven ability to work independently as well as collaboratively in a cross-functional team environment.