Browse current jobs

Low-Level Embedded Software Developer

BMW TechWorks India · Pune

Apply on employer website

Collected role description

Role overview

Low-Level Embedded Software Developer at BMW TechWorks India

We are seeking an experienced software developer with a strong background in embedded systems, specifically within the automotive industry, to join our team.

Responsibilities

  • Develop with us the next generation of embedded software platform for highly networked and innovative automotive software functions in an international team.
  • Work closely with software architects, functional safety experts, and electrical/hardware engineers to develop robust ECU platform solutions.
  • Collaborate in an international and interdisciplinary environment with internal teams and high-tech industry partners.

Preferred qualifications and skills

  • Experience with automotive software platforms.
  • Experience with Python or other scripting languages for automation and development.
  • Familiarity with Continuous Integration (CI), automated testing, Agile, and Test-Driven Development (TDD).
  • Knowledge of functional safety concepts and ISO 26262.
  • Experience with hardware bring-up, board-level debugging, and software-hardware integration.
  • Experience working with embedded software platform integration across different microcontroller architectures

Employment details

  • Location: Pune [Maharashtra] [India]

Additional role details

  • Modern development methods and technologies such as continuous integration and testing, agile development, test-driven development or domain-specific languages are a fixed part of our work.
  • What awaits you?
  • Develop low-level embedded software, device drivers, and software architecture for a variety of microcontrollers powering the next generation of central Electronic Control Units (ECUs).
  • Enable the software stack for new hardware generations and work with partners to define the technical details and interfaces of the ECU hardware platform.
  • Independently coordinate technical activities with relevant stakeholders and contribute proactively to the development of the ECU platform.
  • What should you bring along?
  • University degree in Computer Science, Electrical/Electronics Engineering, or a comparable field, or equivalent professional qualification.
  • Strong proficiency in C++ and solid knowledge of software development best practices.
  • Strong knowledge and hands-on experience in Board Support Package (BSP) and device-driver development for embedded systems.
  • In-depth knowledge of RTOS concepts and CPU architectures such as ARM and/or TriCore.
  • Experience with automotive communication interfaces and bus systems such as Automotive Ethernet, CAN, LIN, I²C, and SPI.
  • Strong experience with hardware debugging and analysis tools, preferably TRACE32, as well as oscilloscopes and logic analyzers.
  • Experience in developing and integrating software platforms for embedded devices is advantageous.
  • Familiarity with hardware bring-up and board-level debugging.
  • Knowledge of Automotive Ethernet switches is beneficial.
  • Knowledge of scripting languages such as Python is advantageous.

Collected experience requirement

2-4 years