Description

Key Responsibilities
- Embedded Design: Architect and implement firmware features using C/C , ensuring designs are optimized for constrained environments (CPU, memory, and power).
- Hardware-Software Integration: Develop low-level drivers and middleware to interface with sensors, actuators, and communication peripherals.
- Automated Hardware Validation: Build and maintain automated testing frameworks primarily using Python for Hardware-in-the-Loop (HIL) testing and system validation.
- Agile Execution: During PI and iteration planning, break down complex hardware-software features into manageable tasks, accounting for hardware dependencies and lead times.
- Technical Governance: Lead deep-dive code reviews and technical spikes to ensure firmware aligns with safety standards and system-level architecture.

Agile Planning & Collaboration
- Synchronized Development: Participate in technical discussions during Program Increment (PI) planning, specifically addressing hardware/firmware dependencies.
- Backlog Refinement: Organize and prioritize the team backlog, managing technical debt and balancing feature velocity with system stability.
- Cross-Functional Bridge: Work closely with Electrical and Mechanical Engineering teams to translate hardware requirements into technical firmware reality.
- System Demos: Demonstrate firmware progress on target hardware to stakeholders, explaining technical logic and timing constraints clearly.

Qualifications
Required Technical Skills
- C/C Mastery: Extensive professional experience in embedded C/C development for microcontrollers (ARM Cortex-M, ESP32, etc.) or RTOS-based systems.
- System Architecture: Ability to design maintainable, scalable firmware architectures including interrupt handling, memory management, and state machines.
- Low-Level Protocols: Hands-on experience with communication interfaces like I2C, SPI, UART, CAN, or USB.
- Debugging: Proficiency using JTAG/SWD debuggers, logic analyzers, and oscilloscopes to troubleshoot hardware-software interactions.

Preferred Experience
- Python for Tools: Experience using Python for scripting, data analysis, or building test harnesses.
- RTOS & Bare Metal: Familiarity with FreeRTOS, Zephyr, or similar real-time operating systems.
- Agile Proficiency: Experience working within the Scaled Agile Framework (SAFe) or similar iterative environments for hardware development.
- Mentorship: A track record of leading firmware projects or guiding junior engineers through complex system integrations

Education

Bachelor's degree