Lead Embedded Firmware Engineer
We are seeking a highly skilled and experienced Embedded Firmware Lead Engineer to guide our firmware development team. In this role, you will be responsible for the end-to-end lifecycle of embedded firmware development, from architecture and design to implementation, testing, and deployment. You will play a critical role in bridging the gap between hardware and software, ensuring the reliability, performance, and security of our embedded systems.
As a Lead Engineer, you will not only provide technical direction and mentorship to the firmware team but also act as a key technical liaison. Customer communication is a mandatory and vital aspect of this role, requiring you to directly interface with clients to gather requirements, provide technical updates, troubleshoot field issues, and ensure customer satisfaction.
Roles & Responsibilities
Technical Leadership & Firmware Development
Architect and Design: Lead the architecture, design, and development of secure, robust, and scalable embedded firmware for microcontrollers and DSPs (e.g., ARM Cortex, TI C2000, NXP).
Code Development: Write, debug, and optimize low-level bare-metal and RTOS-based C/C++ code. Develop device drivers for peripherals (ADC, PWM, SPI, I2C, UART, CAN, Ethernet).
System Integration: Collaborate closely with hardware engineers to ensure seamless hardware/firmware integration, board bring-up, and system-level debugging using oscilloscopes, logic analyzers, and JTAG debuggers.
Testing & Validation: Develop and implement comprehensive software verification and validation plans. Oversee unit testing, integration testing, and Hardware-in-the-Loop (HIL) testing.
Code Quality: Enforce coding standards (e.g., MISRA C), conduct peer code reviews, and maintain version control using Git. Ensure firmware compliance with industry safety and regulatory standards.
Process Improvement: Establish and refine firmware development lifecycles, CI/CD pipelines, and automated testing frameworks.
Customer Communication & Stakeholder Management (Mandatory)
Technical Liaison: Serve as the primary technical point of contact for external customers, translating complex technical concepts into clear, actionable business language.
Requirements Gathering: Lead technical workshops and meetings with customers to define system requirements, functional specifications, and project scope.
Status Reporting: Provide regular, transparent updates to customers regarding project milestones, development progress, and technical challenges.
Field Support & Troubleshooting: Directly assist customers with integration issues, field failures, and performance tuning. Diagnose root causes and deploy over-the-air (OTA) updates or patches as necessary.
Technical Documentation: Generate and present customer-facing documentation, including Software Requirements Specifications, release notes, user manuals, and technical presentations.
Team Management & Mentorship
Team Leadership: Manage, mentor, and guide a team of embedded firmware engineers, fostering a culture of innovation, quality, and continuous learning.
Project Management: Coordinate project timelines, estimate engineering effort, allocate resources, and ensure timely delivery of firmware milestones.
Cross-functional Collaboration: Work collaboratively with systems, hardware, QA, and product management teams to align firmware deliverables with overall product roadmaps.
Work Experience
Required Skills & Qualifications
Technical Skills
Programming: Expert proficiency in C and C++ for embedded systems. Strong understanding of assembly language.
Operating Systems: Extensive experience with Real-Time Operating Systems (RTOS) such as FreeRTOS, Zephyr, or VxWorks, as well as bare-metal programming. Experience with Embedded Linux is a plus.
Microcontrollers/Processors: Deep knowledge of ARM Cortex-M/A architectures, DSPs, and multi-core processors.
Communication Protocols: Hands-on experience with embedded communication interfaces (I2C, SPI, UART, CAN, CAN-FD, Ethernet, USB) and wireless protocols (BLE, Wi-Fi).
Debugging Tools: Proficiency with lab equipment (oscilloscopes, logic analyzers, multimeters) and debugging tools (JTAG, SWD, GDB).
Software Engineering: Strong grasp of software design patterns, state machines, memory management, and secure coding practices.
Soft Skills & Customer Facing Skills
Communication: Exceptional verbal and written communication skills. Ability to confidently present technical information to both technical and non-technical customer stakeholders.
Problem Solving: Strong analytical and problem-solving abilities, especially in high-pressure, customer-facing scenarios.
Interpersonal Skills: Empathy, active listening, and the ability to build strong, trust-based relationships with clients.
Leadership: Proven ability to lead a technical team, manage conflict, and drive projects to successful completion.
Education & Experience
Education: Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field.
Experience:
7-10+ years of progressive experience in embedded firmware development.
2-3+ years of experience in a technical leadership or supervisory role.
Proven track record of direct customer interaction, technical account management, or acting as a Field Application Engineer (FAE) / Technical Liaison.
Preferred Qualifications
Experience with functional safety standards (e.g., ISO 26262, IEC 61508, DO-178C).
Familiarity with IoT platforms, cloud integration (AWS/Azure), and OTA update mechanisms.
Experience in specific industries such as Automotive, Medical Devices, Industrial Automation, or Consumer Electronics.
Knowledge of Model-Based Design (MATLAB/Simulink).
Employment Type: FULL_TIME