We are looking for a Principal Embedded Software Engineer to join our embedded development team. It is an opportunity to join an energetic team to build innovative products that rock the market and impact millions of users. You will make architecture design decisions and guide team members to stay with the best practice in software development. You will lead the development process through our platform launch and product customization, making direct impact to support the success of the product from the first line of code.
Responsibilities
- Embedded firmware design from architecture, coding, integration, debugging to releasing.
- Lead the discussion with other team members in current and proposed architecture(s), defects, enhancements, and other issues.
- Design platform codebase that can be adapted to support various customer projects.
- Analyze issues and fix bugs leveraging tools and instruments on hardware.
- Work as a lead of the Agile cross-functional development team, delivery code with quality following best practice for secure software development.
- Improve and maintain CI/CD and test automation framework.
- Demonstrated organizational skills, with ability to handle and prioritize multiple projects in a timely manner in a fast-paced environment.
Qualifications
- Proficient in C/C++ with more than 10 years of product development experience
- Strong embedded software development skill with FreeRTOS and Embedded Linux
- Past product development experience using BLE, RF4CE, ZigBee, Thread and/or WiFi is mandatory
- Familiar with troubleshooting application bugs, device driver and connectivity issues using sniffers and logical analyzers.
- Familiar with multi-thread networking application development with TCP/IP stack
- Going through multiple software development lifecycles, using Agile development methodologies
- Experience with AI and ML on edge device is a plus
Education
- B.S. Degree in Computer Science or related technical field, M.S preferred.