Staff Engineer, Device Software C++
- California, Maryland, United States
- California, Maryland, United States
À propos
Staff C++ Software Engineer
Company Description
At Butterfly Network, we're leading a digital revolution in medical imaging, transforming an industry that has long relied on bulky, analog systems. With our proprietary Ultrasound-on-Chip technology, we're democratizing healthcare by shifting ultrasound from the expensive, stationary systems of the past to the connected, mobile, and software-enabled platforms of today. In 2018, we launched the world's first handheld, whole-body ultrasound, Butterfly iQ – followed by iQ+ in 2020 and iQ3 in 2024, each more powerful than the last.
Our innovation doesn't stop at hardware. Butterfly combines our advanced device with intelligent software, AI, services, and education to drive adoption of affordable, accessible imaging. Our technology is proving to help clinicians, clinics, and hospitals enhance care, cut costs, and expand imaging access. We've been recognized by Prix Galien USA, Fierce 50, TIME's Best Inventions, Fast Company's World Changing Ideas, among other awards.
We're a team of bold thinkers, problem-solvers, and innovators ready to shape the future of medical imaging. Let's build something extraordinary together
Job Description
We are seeking a Staff C++ Software Engineer to lead the design and development of a robust C++ Software Development Kit (SDK) for controlling and interfacing with an ultrasound imaging device. This SDK will serve as a common platform used by internal development teams and external partners.
This is a senior individual contributor role for an engineer who is a fast learner, self-starter, and capable of working autonomously in a complex, hardware-adjacent environment. The ideal candidate thrives in ambiguous problem spaces, takes full ownership of technical outcomes, and drives solutions from concept through production and external adoption.
As part of our team, your core responsibilities will include, but not limited to:
- Serve as the technical owner and architect for a C++ SDK controlling an ultrasound imaging device.
- Lead SDK design decisions with a focus on API clarity, usability, scalability, and long-term maintainability.
- Rapidly learn complex device behavior, imaging workflows, and system constraints to make informed design decisions.
- Work autonomously to define requirements, propose solutions, and execute with minimal supervision.
- Collaborate cross-functionally with firmware, hardware, imaging, systems, and product teams to define control and data interfaces.
- Design abstractions for device configuration, image acquisition, real-time data streaming, and system state management.
- Establish best practices for SDK architecture, testing strategy, documentation standards, and release processes.
- Ensure SDK robustness, performance, and reliability in hardware-integrated and real-time contexts.
- Drive SDK versioning, backward compatibility, deprecation policies, and partner-facing release strategy.
- Create and maintain high-quality developer documentation, examples, and reference implementations.
- Mentor and provide technical guidance to other engineers contributing to the SDK or adjacent platform components.
- Support internal teams and external partners with integration, debugging, and advanced use cases.
Qualifications
Baseline skills/experiences/attributes:
- Bachelor's degree in Computer Science, Software Engineering, or equivalent practical experience.
- Extensive professional experience developing production-quality software in modern C++ (C++14/17/20).
- Proven experience designing and owning SDKs, platforms, or shared libraries used by multiple teams or external users, with a primary focus on Linux-based systems.
- Comfort and familiarity working with Python.
- Demonstrated ability to quickly learn complex systems involving hardware, firmware, or imaging pipelines.
- Strong architectural and system design skills with an emphasis on clean, intuitive APIs.
- Ability to work independently, prioritize effectively, and drive work forward with minimal direction.
- Deep understanding of memory management, object lifetimes, and performance optimization in C++.
- Experience with multithreading, concurrency, and synchronization in performance-sensitive systems.
- Strong testing discipline, including unit, integration, and hardware-in-the-loop testing strategies.
- Excellent written and verbal communication skills, especially for technical documentation and cross-team alignment.
Ideally, you also have these skills/experiences/attributes (but it's ok if you don't):
- Familiarity with real-time operating systems (RTOS) or real-time constraints.
- Familiarity with automatic cross-language wrapper generation (Djinni, SWIG).
- Support Development tools in Qt 6.
- Support complex build systems with multiple build tools and CI pipelines.
- Experience with device drivers, hardware abstraction layers, or firmware interfaces.
- Knowledge of image acquisition, signal processing, or data streaming architectures.
- Experience defining SDK governance, versioning strategies, and long-term technical roadmaps.
- Familiarity with medical software standards (e.g., IEC 62304, ISO 13485, FDA software lifecycle guidance).
- Experience supporting external developers or partners consuming a published SDK.
Values
Innovation is what we do. Our values are how we make it happen. Butterflies are and believe in…
Patient-Centric Innovators: Our mission is THE mission.
Empowered to Impact: Every voice matters.
One Team, One Goal: Unity fuels progress.
Growth Champions: We embrace challenges.
Action-Oriented Achievers: We follow through, every time.
Location
Butterfly offers a hybrid work model for most positions, with team members spending two or more days a week in the office. While flexibility is key, we value in-person connections that spark creativity and teamwork. Our offices are designed for collaboration, with comfortable workspaces, stocked kitchens, and opportunities to connect with peers.
This is a hybrid position that can be based in Burlington, MA, New York City, NY or the Greater SF Bay Area.
Benefits And Perks
- Comprehensive health insurance, encompassing dental and vision coverage, is provided to all our employees. As a health-tech company, we prioritize the well-being of our teams. Additionally, employees have the option to buy up for enhanced health insurance coverage. We also contribute to Health Savings
Compétences linguistiques
- English
Cette offre provient d’une plateforme partenaire de TieTalent. Cliquez sur « Postuler maintenant » pour soumettre votre candidature directement sur leur site.