Ricardo: Embedded Software Engineer

Our Vacancies

Early careers

Embedded Software Engineer

  • Role type
  • Full time

  • Location
  • Van Buren, MI

Job Description

Experience designing, testing, and releasing complex and innovative software for electric, hybrid, and CAV applications. You will use your technical creativity to deliver custom embedded solutions for applications such as inverters, chargers, DC-DC converters, EV and Hybrid control, and connected and autonomous vehicle technologies.


Essential Functions:

  • Planning and executing embedded software designs for volume manufacture and prototyping
  • Performing activities throughout the software product lifecycle including:
  • Capturing and specifying requirements capture
  • Designing and analyzing software architecture and hardware-software interfaces
  • Evaluating third-party software components and tools, experimenting with evaluation boards, and prototyping solutions
  • Creating software verification plans
  • Implementing, testing, and debugging software
  • Identifying, proposing and implementing improvements and enhancements to Ricardo’s family of products:
  • Diagnostics capabilities
  • Communications interfaces (including CAN, LIN, and Ethernet)
  • Bootloaders
  • Low-level device drivers
  • Microcontroller functions
  • User interfaces, including C-APIs, Simulink blocks, code generation scripts, and integration with 3rd-party tools
  • Provides timely and accurate department reports as appropriate and requested
  • Delivers superior levels of client service to both internal and external clients while demonstrating Ricardo’s core values of respect, integrity, creativity and innovation, and passion
  • Performs other job-related duties as assigned
  • 10+ years C programming
  • 5+ years writing device drivers
  • Assembly programming experience
  • Experience with RTOS, Linux development (plus)
  • Experience with UML modeling (plus)
  • Experience with requirements management tools
  • Experience with various processors (ARM, PPC, etc.)
  • Understanding of vehicle networks (CAN, Ethernet)
  • Experience with quality processes (CMMI, ASPICE)
  • B.S. Computer Science, Electrical Engineering, or related