
Software Engineer - Ultrasound Technologies
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 versatile Software Engineer with a strong background in signal processing, software architecture, and data analysis to join our dynamic team. In this role, you will be instrumental in developing software solutions for processing, analyzing, and visualizing ultrasound data, working across the technology stack.
This position will primarily leverage Python for developing applications software, signal processing pipelines, data analysis tools, and instrumentation. You will also utilize C/C++ for embedded and low-level applications. MATLAB will also be used to control a research ultrasound system for algorithm prototyping and validation. Working directly with clients, you will tackle challenging technical problems within the ultrasound domain. The ideal candidate thrives in a fast-paced consulting environment, can design robust and maintainable software systems, adapts quickly to various programming languages and technical challenges, and possesses strong analytical and problem-solving abilities.
Key Responsibilities
Develop, implement, and optimize advanced digital signal processing algorithms and pipelines for ultrasound data, primarily using Python.
Design and build robust, scalable, and well-structured software architectures for ultrasound data acquisition, processing, analysis, and visualization applications.
Create primary application software and tools using Python to interact with ultrasound data, perform analysis, generate reports, and visualize results.
Utilize C/C++ for implementing performance-critical components or interfacing with lower-level hardware APIs when necessary.
Employ MATLAB for algorithm prototyping, simulation, testing, and validation of signal processing techniques.
Collaborate with cross-functional teams including hardware engineers, transducer engineers, and application scientists to integrate software solutions.
Work directly with clients to gather requirements, understand their challenges, develop technical specifications, and deliver tailored software solutions.
Troubleshoot and debug complex software issues and data processing workflows.
Develop and maintain comprehensive technical documentation, including design specifications, code documentation, and user guides.
Participate in client meetings and presentations to communicate technical concepts, progress, and results.
Qualifications
Required
Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, Physics, or a related field with a strong quantitative focus.
4+ years of professional experience in software development with a significant focus on digital signal processing or data analysis applications.
Proficiency in Python, including experience with scientific computing libraries (e.g., NumPy, SciPy, Pandas, scikit-image) and data visualization.
Proficiency in C/C++ with embedded application experience.
Strong understanding of digital signal processing concepts (e.g., filtering, spectral analysis, sampling theory, Fourier analysis).
Experience designing and implementing software using good architecture principles and design patterns.
Experience with version control systems (Git) and modern software development methodologies.
Excellent analytical and problem-solving skills, particularly in the context of complex data processing.
Strong communication skills and ability to explain technical concepts clearly to diverse audiences.
Adaptability to work across multiple projects simultaneously in a dynamic environment.
Preferred
Experience with ultrasound systems, medical devices, or related acoustic/sensing technologies.
Background in signal processing algorithms relevant to ultrasound (e.g., beamforming, synthetic aperture, Doppler processing, imaging reconstruction).
Experience with real-time or near-real-time data processing pipelines.
Experience interacting with hardware or instrumentation via software control.
Proficiency in MATLAB for algorithm development and analysis.
Knowledge of hardware description languages (Verilog/SystemVerilog or VHDL) or experience developing software that interacts with FPGA-based systems.
Experience with GUI development using frameworks like Qt, or similar.
Familiarity with Linux/Unix environments.
Understanding of communication protocols (e.g., USB, Ethernet, SPI, I2C) as they relate to data acquisition.
Familiarity with medical device regulations and standards or experience in other regulated industries.
Prior consulting experience or client-facing role.
Projects You Might Work On
Designing and implementing software architectures for large-scale ultrasound data processing platforms.
Developing advanced Python libraries for ultrasound data processing and analysis.
Creating custom data analysis and visualization tools in Python for clients.
Prototyping and validating novel ultrasound algorithms in MATLAB or Python.
Developing software interfaces to control experimental ultrasound acquisition systems and process the resulting data.
Developing C/C++ embedded software projects or drivers.
Contributing to research prototypes for new ultrasound imaging modalities through algorithm development and software implementation.
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 software and signal processing!