What are the responsibilities and job description for the Senior Firmware & Embedded Software Engineer position at NextFlex?
Job Type
Full-time
Description
- Department: Engineering & Fab Operations
- Reports to: Engineering Manager, System Design
- Classification: Exempt
- Ideal Start Date: ASAP
- Desired Employment Location: San Jose / Bay Area
- Visa Sponsorship Eligible: No
NextFlex is looking for a talented, creative and disciplined firmware engineer to join the System Design and Electrical Engineering Group. In this role, you will architect, design, prototype, and test firmware for the next generation of additively manufactured Hybrid Electronics (HE) that radically redefine the way people work, play and connect. The candidate is expected to architect, design, develop and test firmware that enables application domains in wearables, industrial IOT and structural health monitoring.
In this role, you will participate in the definition of architecture and implementation of designs in both prototype and shipping consumer products and critical needs for the Department of Defense as well as demonstrate good development practices and seamless collaboration. You will have the opportunity to participate in all phases of system and device design. You will collaborate closely with our experts in system integration, robotics, software, testing, and process, in a broad range of environments from medical devices to consumer electronics.
Requirements
Essential Job Functions and Responsibilities
Reasonable accommodations may be made to enable individuals with disabilities to perform these essential functions.
The essential functions include, but are not limited to the following:
· Develop firmware for low-power, ARM Cortex-M based, embedded devices that interact with various sensors / IC including, BLE, accelerometers, external flash and other peripherals.
· Understand and implement power-management, boot loaders, scheduling, inter-processor communication, computer vision and firmware / system interfaces on RTOS and/or bare-metal environments.
· Board bring-up: work with Hardware engineers to debug pre-production boards and iterate design until functional.
· Define and document software requirements and software design methodologies.
· Help design and maintain the development process to architect, document, implement, test and track sustainable and reusable code.
· Develop manufacturing tests for firmware that will run at the factory to validate firmware and electronics work as expected.
· Bachelor of Science in Computer Engineering or Computer Science, or equivalent.
· 10 years of embedded software development experience.
· Experience with RTOS (ex: FreeRTOS, Zephyr).
· Experience with embedded software design and programming in C/C for development, debugging, testing and performance analysis using Python.
· Deep understanding of Bluetooth Low Energy is required.
· Experience with low-power microcontrollers (e.g., ARM Cortex M4 series, Nordic, Ambiq, STMicro) is required.
· Familiar with: I2C, UART, SPI, PWM, ADC, Timers, Counters, USB, Flash, RAM.
· Experience using Git, Jira, PLM, continuous integration, unit and regression testing is required.
· Familiar with IDEs including MS Visual Studio, Segger IDE, Visual Studio Code, Keil.
· Knowledge of Java and Javascript is a plus.
· Experience with WiFi is a plus.
· Familiarity with batteries and charger ICs is preferred, implement charge & discharge curves.
· Optimizing peripheral / sensor communications for low power is preferred.
· Familiar with analog sensors (e.g., temperature, light, accelerometer) is preferred.
· Experience with machine learning algorithms, AI models, and implementation strategies.
The physical demands described here are representative of those that must be met by an employee to successfully perform the essential functions of this position. Reasonable accommodations may be made to enable individuals with disabilities to perform the functions.
On-site office work will be conducted using general office equipment, includes substantial sitting and is performed primarily in a typical indoor office setting with cubicles, offices, and conference rooms. Low to moderate noise and interruptions typical of an office setting, such as peer conversations, computers, printers, and phones.
Up to 10% domestic travel.