Used Tools & Technologies
Not specified
Required Skills & Competences
Tag name is followed by "@" symbol and proficiency level value.
About proficiency levels:
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Linux @ 4
Networking @ 4
Debugging @ 3
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Details
The Software Engineering Embedded team builds reliable, high-performance systems on custom hardware. The team works closely with hardware engineers to design, optimize, and ship software that bridges cutting-edge devices and real-world constraints like memory, power, and latency. Work spans early prototyping through product launch, ensuring embedded platforms are robust, efficient, and production-ready.
This role is based in San Francisco, CA and uses a hybrid work model of four days in the office per week. Relocation assistance is offered to new employees.
Responsibilities
- Design, implement, and debug software for embedded devices.
- Contribute to defining software requirements, interfaces, and test plans.
- Bring up and debug new boards.
- Analyze performance, memory, and power profiles and implement optimizations.
- Investigate field issues, perform root-cause analysis, and deliver robust fixes.
- Foster good software engineering practices and partner closely with hardware teams.
Requirements
- Deep experience shipping embedded systems (around 10+ years).
- Proficient in C and C++ and writing production-quality low-level code.
- Familiarity with embedded toolchains, operating systems, and debugging tools.
- Strong debugging skills and experience with board bring-up and hardware/software integration.
- Experience with both rapid prototyping and scalable product development.
- Nice to have: experience with Zephyr RTOS.
- Nice to have: experience with networking/wireless stacks (BLE, Wi-Fi).
- Nice to have: experience with robotic system bring-up or Linux kernel development.
Benefits
- Competitive base pay (see compensation); offers equity and potential performance-related bonuses.
- Medical, dental, and vision insurance with employer contributions to Health Savings Accounts.
- Pre-tax accounts for Health FSA, Dependent Care FSA, and commuter expenses.
- 401(k) retirement plan with employer match.
- Paid parental leave and paid medical/caregiver leave.
- Flexible PTO and additional paid company holidays and office closures.
- Mental health and wellness support; employer-paid basic life and disability coverage.
- Annual learning and development stipend and daily meals/meal credits in offices.
- Relocation support for eligible employees.
- Background checks and reasonable accommodations for applicants with disabilities.