Base Career helps you apply smarter for this job.
Key skills for this role
This is a full-time position with the following responsibilities:
Support and improve our C++ application that controls the actions, appearance and outputs of the Empo Footprint scale. This includes the user space interface to the hardware and use of open source libraries available through Yocto and the open embedded project.
Design and implement reliable, thread-safe, multithreaded software components (synchronization, concurrency mechanisms, performance).
Collaborate closely with Electrical, Mechanical, and Test teams to integrate new hardware features and resolve integration issues.
Contribute to debugging and resolution of field issues, including reproducing issues, instrumenting code, and delivering fixes.
Develop and maintain automation, test, and build tooling using Python and/or Bash. Regression test on the app.
Write/maintain user-space code in C/C++ and apply strong design principles where appropriate.
Support manufacturing and bring-up activities as needed, including hands-on troubleshooting with lab tools.
Improve software observability and diagnostics (logging, metrics, traceability, version reporting).
Participate in code reviews and establish maintainable architecture for long-term product scalability.
Contribute to embedded Linux platform work.
Document software architecture, interfaces, and test strategy to support a regulated medical-device environment.
Continue use and support of our 3rd party over-the-air software updater and device monitor.
Have a Bachelors or Masters in Electrical Engineering, Computer Engineering, or Computer Science or a related field.
Have a minimum of 10 years of direct applicable experience
Skip the repetitive application forms
Install the Base Career Chrome Extension and autofill job applications across major job boards with your profile.
Trusted by over 500,000 job seekers on Base Career
Have a proven record of working as a self-starter with ownership mentality
Have a strong ability to work well with others
Possess exceptional communication skills, both written and verbal
Have served as the lead on similarly scoped firmware projects
Have strong C/C++ experience
Have contributed heavily to hardware products that have shipped.
Are comfortable developing on Linux and in embedded environments.
Have Yocto/OpenEmbedded (or other embedded Linux) experience.
Have strong knowledge of multithreading and synchronization.
Use Python and/or Bash scripting for automation, testing, and build processes.
Have board bring-up experience and are comfortable with I2C/SPI/I2S.
Can operate effectively in a small, fast-paced team and collaborate cross-functionally.
Are able to work onsite as needed in San Bruno to support hardware integration and manufacturing debugging, typically 3 days a week.
Are familiar with Linux Device Trees.
Are familiar with the i.MX platform
Have project management experience
Are comfortable with lab tools such as an oscilloscope, logic analyzer, and multimeter.
Are experienced with Git
Are experienced with factory production and assisting with field issues
Have class 1 medical-device software process familiarity
Provides in-home imaging scales for diabetic foot monitoring.
Visit company websiteJobs and hiring trendsFull-time
Senior · 10+ years experience
Hybrid
Apply faster on company sites with our extension.