Embedded Software Engineer

BraunAbilityCarmel, IN
Onsite

About The Position

BraunAbility is a global leader in mobility solutions that enable independence for people with disabilities. Our engineering teams design and develop safety critical embedded systems that integrate directly with OEM vehicle platforms to control doors, ramps, kneel systems, and other vehicle conversion functions. This role joins a hands-on embedded software team working on real production vehicle modules, not abstract applications—software that directly moves hardware and interacts with OEM vehicle networks. The Embedded Software Engineer will develop, maintain, and improve embedded firmware for vehicle control modules, working closely with electrical, systems, and test engineers. This role focuses on STM32based controllers, CAN/LIN communication, state-machine-driven control logic, and Hardware-in-the-Loop (HIL) testing used in BraunAbility door, ramp, and kneel systems. You will be involved across the full lifecycle—from requirements and architecture through debugging, validation, and production support.

Requirements

  • Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related field.
  • Strong experience with embedded C/C++ development.
  • Handson experience with ARMbased microcontrollers (STM32 or similar).
  • Experience with vehicle or industrial communication protocols such as CAN, LIN, UART, SPI, or I2C.
  • Practical debugging skills using tools such as debuggers, logic analyzers, oscilloscopes, or CAN tools.

Nice To Haves

  • Experience working with vehicle systems or mobile equipment.
  • Familiarity with state machine-based control architecture control architectures.
  • Exposure to ISO 26262, automotive safety, or regulated product development.
  • Experience with integration testing, HIL setups, or production test code.
  • Experience collaborating across hardware, software, and manufacturing disciplines.

Responsibilities

  • Design and implement embedded C/C++ firmware for ARMbased microcontrollers (primarily STM32) used in BraunAbility vehicle modules.
  • Develop modular, maintainable software using state machines for door, ramp, and kneel control logic.
  • Implement motor control, sensor interfaces, timers, sleep/wake behavior, and firmware update mechanisms.
  • Develop and maintain CAN and LIN communication with OEM vehicles and internal modules.
  • Support reverse engineering and interpretation of OEM CAN/LIN messages for new vehicle platforms.
  • Debug system level issues involving timing, network behavior, and multimodule interactions.
  • Support integration testing and hardware in the loop (HIL) testing on bench setups.
  • Develop and support test firmware, production test code, and diagnostic utilities.
  • Collaborate on root cause analysis for complex software hardware interaction issues.
  • Create and maintain technical documentation including software architecture, communication definitions, and test procedures.
  • Work within BraunAbility’s quality, safety, and compliance expectations, with exposure to automotive and functional safety practices.
  • Collaborate closely with electrical engineers, systems engineers, and manufacturing teams.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service