
Software Engineer (Medical Devices & Embedded Systems)
About Us
Our company specializes in innovative ultrasound technologies, providing cutting-edge consulting services across various industries including medical imaging, non-destructive testing, and advanced sensing applications. We work with clients ranging from startups to Fortune 500 companies, delivering customized solutions that push the boundaries of ultrasound technology.
Position Overview
We are seeking a skilled and detail-oriented Software Engineer with a strong background in developing robust, testable, and compliant software for complex systems. In this role, you will be instrumental in creating software for medical devices and advanced instrumentation, with a focus on quality, reliability, and adherence to regulatory standards.
This position will primarily leverage Python for application-level software and test automation, and C/C++ for embedded systems, real-time control, and performance critical components. You will be responsible for the full software development lifecycle, from requirements and design to implementation, testing, and documentation within a regulated framework. The ideal candidate has a passion for building high-quality software, thrives in a collaborative environment, and possesses a strong understanding of software verification and validation processes.
Key Responsibilities
Design, develop, test, and maintain robust software for embedded systems and desktop applications using C/C++ and Python.
Develop and execute comprehensive software test plans, including creating unit tests, integration tests, and system-level verification protocols.
Ensure all software development activities and documentation comply with medical device standards, particularly IEC 62304, and support our Quality Management System (QMS).
Develop low-level drivers and firmware to interface with custom hardware, FPGAs, and various peripherals.
Create and maintain clear, concise, and compliant technical documentation, including software requirements, architecture specifications, and test reports.
Develop graphical user interfaces (GUIs) for device control and data visualization using frameworks like Qt.
Collaborate closely with hardware, systems, and quality assurance engineers to deliver integrated and reliable products.
Troubleshoot and debug complex issues at the hardware-software interface.
Work directly with clients to understand requirements, define technical specifications, and deliver tailored software solutions.
Qualifications
Required
Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field.
4+ years of professional experience in software development.
Proficiency in both Python and C/C++ for application and embedded systems development.
Proven experience working within a regulated industry (e.g., medical device, automotive, aerospace) with a strong understanding of standards such as IEC 62304, ISO 13485, or similar.
Demonstrable experience with software testing methodologies, including unit testing, integration testing, and verification/validation.
Experience with version control systems (Git) and modern software development practices.
Excellent analytical and problem-solving skills with meticulous attention to detail.
Strong written and verbal communication skills, with an ability to document work clearly and thoroughly.
Ability to work effectively in a collaborative, fast-paced consulting environment.
Preferred
Experience developing software that interfaces with FPGAs.
FPGA development experience using Verilog, System Verilog, or VHDL. • Experience with GUI development using frameworks like Qt or similar.
Familiarity with ultrasound systems, medical imaging, or other sensing technologies.
Strong understanding of communication protocols (e.g., USB, Ethernet, SPI, I2C). • Familiarity with Linux/Unix environments and cross-platform development.
Prior consulting experience or a client-facing role.
Projects You Might Work On
Developing the C++ firmware and control software for a next-generation medical imaging device.
Creating a comprehensive unit testing and integration testing suite for a mission critical software component to ensure IEC 62304 compliance.
Designing and implementing a Python-based desktop application with a Qt front end for instrument control and data analysis.
Writing low-level drivers to manage data flow between a high-speed sensor and an embedded processor.
Authoring software requirements, design specifications, and test protocols for regulatory submission.
Integrating and debugging software modules with custom FPGA-based hardware platforms.
What We Offer
Opportunity to work on diverse, challenging projects across multiple industries.
Exposure to cutting-edge ultrasound technologies and applications.
Collaborative, innovative work environment with talented engineers and scientists.
Professional development opportunities and continuous learning.
Competitive salary and benefits package.
Flexible work arrangements.
We value diversity in experience and background and encourage all qualified candidates to apply. Join our team and help shape the future of ultrasound technology across multiple industries through innovative and high-quality software!