Lead Engineer - Firmware

River 

📍 Bengaluru East, India 🇮🇳

full-time
senior
Posted —

Key Skills

FreeRTOSARMUDSI2CCAN

Industry

AutomotiveConsumer Electronics

Job Description

Key Responsibilities

  • Design and implement efficient bootloader software for embedded systems, particularly for Battery Management Systems (BMS) in EVs. Ensure reliable firmware updates, initialization, and hardware management.
  • Develop embedded software for ARM Cortex M4 based systems using FreeRTOS. Focus on real-time operating systems, task scheduling, inter-task communication, and power management for BMS applications.
  • Implement communication protocols such as I2C, SPI, CAN, UART, ADC, PWM, and DAC for communication between various embedded components, sensors, and modules in the BMS. Ensure seamless and robust data transmission and reception.
  • Develop and integrate UDS (ISO 14229) communication protocols for diagnostic purposes. Implement error reporting and fault diagnostics according to industry standards.
  • Ensure compliance with ISO 26262 functional safety standards. Work closely with system engineers to meet the required safety levels for BMS development in EVs.
  • Develop and execute unit tests, integration tests, and validation plans. Ensure comprehensive test coverage for embedded software components and ensure compliance with safety and quality standards.
  • Work on improving BMS software to meet performance, power consumption, and reliability targets. Optimize the software to ensure high availability and fault tolerance for critical EV applications.
  • Create and maintain technical documentation, including software architecture, design specifications, test cases, and traceability matrices. Ensure adherence to internal and external safety, quality, and regulatory requirements.
  • Collaborate with cross-functional teams (hardware engineers, system architects, and other software developers) to design, develop, and integrate hardware and software components for BMS systems in EVs.

Ideal Candidate

  • Bachelor’s or Master’s degree in Electrical Engineering, Computer Science, Mechatronics, or a related field.
  • Minimum of 5 years of experience in embedded software development for Battery Management Systems (BMS) or similar applications in the EV domain.
  • Experience in EV/BMS development: Direct experience in Battery Management Systems for Electric Vehicles is highly desirable.
  • We are seeking an experienced and talented BMS (Battery Management System) Engineer for the Electric Vehicle (EV) domain. The ideal candidate will have hands-on experience in embedded systems development, with a strong focus on Bootloader, FreeRTOS, ARM Cortex M4, and UDS. Additionally, the candidate should have a deep understanding of automotive safety standards, unit testing, and protocol experience with I2C, SPI, CAN, UART, ADC, PWM, and DAC. This role will be key in the design, development, and validation of embedded software solutions for advanced BMS in electric vehicles.
  • Familiarity with automotive communication standards (e.g., CAN for vehicle networking, UDS for diagnostics) and safety protocols.
  • Experience with ARM Cortex M4 architecture, embedded systems development, and real-time operating systems like FreeRTOS.
  • Hands-on experience with I2C, SPI, CAN, UART, ADC, PWM, and DAC protocols for communication with embedded components.
  • In-depth understanding of data communication, error handling, and interface protocols in embedded systems.
  • Proficiency in Bootloader development, and knowledge of embedded firmware management.
  • Experience implementing UDS protocols for diagnostics.
  • Understanding of ISO 26262 safety standards for functional safety in automotive systems.
  • Strong proficiency in C/C++ programming for embedded systems.
  • Experience with low-level programming, hardware interfacing, and debugging.
  • Experience in unit testing of embedded software and integration with continuous integration (CI) systems.
  • Familiarity with development and debugging tools (e.g., Keil, IAR Embedded Workbench, JTAG, Oscilloscopes, etc.).
  • Experience using version control systems like Git.
  • Attention to detail and a strong focus on quality and reliability.