About The Position

ARi, headquartered in East Peoria, IL, USA, is a rapidly expanding global engineering enterprise. The essence of our “i” symbolizes our distinctiveness from competitors – an embodiment of innovation, intelligence, ingenuity, and insight. Boasting a diverse team of over 1,500 engineering experts hailing from various nations and cultures across the globe, we are excellently poised to provide intricate and personalized resolutions to our esteemed clients. We are seeking a highly motivated and skilled Senior Embedded Software Engineer to design, develop, test, and maintain embedded software systems. The ideal candidate should possess strong programming expertise in C and C++ , hands-on experience with MATLAB/Simulink , and a solid understanding of embedded systems and software development processes.

Requirements

  • Strong programming skills in Embedded C and C++ .
  • Experience with C Test and Google Test (GTest) frameworks.
  • Experience with communication protocols such as CAN and J1939 .
  • Experience with software debugging and troubleshooting in embedded environments.
  • Familiarity with version control systems such as Git .
  • Experience in software architecture, design reviews, and code reviews.
  • Excellent analytical, problem-solving, and communication skills.
  • MATLAB programming and scripting.
  • Simulink model development.
  • Model-Based Design (MBD).
  • Automatic code generation using Embedded Coder.
  • Algorithm development, simulation, and validation.
  • System modeling and control logic implementation.
  • Bachelor’s or Master’s degree in Computer Science, Embedded Systems, Electronics & Communication Engineering, Electrical Engineering , or a related engineering discipline.
  • 6 - 8 years of experience in embedded software development.

Nice To Haves

  • Experience in display software development and GUI applications is an added advantage.

Responsibilities

  • Design, develop, and optimize embedded software applications using C and C++ .
  • Develop and maintain unit test frameworks and test code to validate software functionality and integrate automated testing into the build system.
  • Create, simulate, and validate control algorithms using MATLAB/Simulink .
  • Translate system requirements into software design and implementation.
  • Perform software integration, debugging, and troubleshooting on target hardware and development environments.
  • Participate in software architecture design, code reviews, and technical discussions.
  • Conduct unit testing, integration testing, and system testing activities.
  • Ensure software quality through coding standards, documentation, and version control best practices.
  • Collaborate with cross-functional teams including Systems, Software, Validation, and Product Engineering teams.
  • Support continuous improvement initiatives for software development processes, methodologies, and tools.

Benefits

  • Group health insurance
  • Dental insurance
  • Life insurance
  • Vision coverage
  • Paid time off
  • Sick days
  • Company holidays
  • Maternity/paternity leave
  • Bereavement support
  • 401(k) program
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service