Sr. Firmware Engineer
Role details
Job location
Tech stack
Job description
We are seeking an experienced and driven Sr. Firmware Engineer to play a key role in building and scaling the core embedded systems behind our platform. This role is ideal for someone who thrives in low-level development, enjoys solving complex system-level problems, and takes pride in writing efficient, maintainable firmware that moves from prototype to production. You'll help shape our firmware architecture, establish scalable development processes, and collaborate closely with our mechanical, software, and product teams to bring highly precise hardware systems to life. If you're excited by challenging technical problems and want to have real ownership in a fast-moving environment, we'd love to hear from you., * Architect & improve a robust firmware tree that supports iterative improvement and long-term maintainability.
- Make architectural firmware decisions & drive development from prototype to release
- Help create scalable firmware processes for a growing company
- High level of proficiency in low level C/C++ programming
- Bare metal firmware development
- Utilize a multitude of embedded peripherals for precision timing of events
- Comfortable with low level code optimization and the associated tradeoffs
- Create and maintain firmware documentation in company knowledge base
- Write firmware for a variety of embedded systems for both internal and external customers
- Collaborate with the software & product teams to ensure end-to-end product conformance and functionality
Requirements
Do you have experience in RTOS?, * 5+ years of relevant experience
- Bachelor's degree in computer engineering, computer science, mechatronics, electrical engineering, or related fields.
- Experience with real time operating systems (RTOS)
- Experience with ARM microcontrollers
- C/C++ development for embedded systems, including bare metal development
- Possesses a good understanding of common circuits and electronic debugging techniques
- Familiarity with oscilloscopes, logic analyzers, and other common lab equipment
- Comfortable with and capable of solving very complex and ambiguous problems
- Understanding of common software development processes and an ability to work closely with other software engineers
- Able to manage multiple projects simultaneously
- Must be able to develop a broad understanding of our system as a whole, in order to make firmware tree decisions that will result in long-term maintainable code.
Nice to Haves
- Experience with Nordic Semiconductor SoC's
- Python experience
- C# experience
Benefits & conditions
Pulled from the full job description
- 401(k)
- Health insurance
- 401(k) matching
- Paid time off
- Vision insurance
- Dental insurance
- Relocation assistance, * 401(k)
- 401(k) matching
- Dental insurance
- Health insurance
- Paid time off
- Relocation assistance
- Vision insurance