> Markdown version of [/jobs/ext/3546331-embedded-software-developer](https://www.wearedevelopers.com/jobs/ext/3546331-embedded-software-developer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Embedded Software Developer - **Company:** Amaris - **Location:** Peoria, IL, United States - **Experience:** Expert - **Contract:** Permanent contract - **Skills:** Automation of Tests, C++ (Programming Language), Code Review, Continuous Integration, Linux on Embedded Systems, Embedded Software, Software Architecture, Software Engineering, Verification and Validation (Software), Systems Architecture, Git, Yocto, Information Technology, C++14, Industrial Software, Docker - **Published:** September 30, 2026 - **Apply:** https://careers.mantu.com/apply ## About the Role * Degree in Computer Science, Software Engineering or a related field, or equivalent experience. * At least 8 years of software development experience. * Strong proficiency in C, with experience in modern C++. * Professional experience developing software for embedded environments. * Ability to work independently on complex technical features. * Comfortable acting as a technical reference for the team. * Experience with Git, CI/CD and automated testing. * Strong communication skills. * A genuine interest in mentoring and supporting other developers. Nice to have * Experience improving performance on embedded compute platforms. * Experience with Embedded Linux and Docker. * Background in heavy equipment, automotive, mining or industrial systems. * Knowledge of functional safety standards such as ISO 26262, ISO 13849 or equivalent. * Familiarity with Yocto and Conan. ## Description Amaris Consulting is looking for a Senior Embedded Software Engineer to join a team developing safety-critical systems for the heavy equipment and driver-assistance sectors. You'll design, develop and maintain embedded software in C and C++. You'll work closely with the system architect, hardware, systems and product teams to deliver reliable software for applications running on shared embedded hardware. The role also includes technical leadership. You'll help break down complex features, distribute tasks across the team, review code and support less experienced developers., * Design, develop and maintain embedded software in C and C++. * Analyze new features and break them down into clear technical tasks. * Help distribute work across the development team. * Contribute to software architecture alongside the system architect. * Review code and guide developers on best practices. * Build and maintain CI/CD pipelines. * Develop automated tests and support software validation. * Deploy multiple applications on shared embedded platforms. * Investigate performance issues and improve application behavior. * Work with hardware, systems and product teams throughout the development lifecycle. * Contribute to technical discussions, design decisions and delivery planning., At Amaris, we strive to provide our candidates with the best possible recruitment experience. We like to get to know our candidates, challenge them, and be able to give them proper feedback as quickly as possible. Here's what our recruitment process looks like: Brief Call: Our process typically begins with a brief virtual/phone conversation to get to know you! The objective? Learn about you, understand your motivations, and make sure we have the right job for you! Interviews (the average number of interviews is 3 - the number may vary depending on the level of seniority required for the position). During the interviews, you will meet people from our team: your line manager of course, but also other people related to your future role. We will talk in depth about you, your experience, and skills, but also about the position and what will be expected of you. Of course, you will also get to know Amaris: our culture, our roots, our teams, and your career opportunities! Case study: Depending on the position, we may ask you to take a test. This could be a role play, a technical assessment, a problem-solving scenario, etc. As you know, every person is different and so is every role in a company. That is why we have to adapt accordingly, and the process may differ slightly at times. However, please know that we always put ourselves in the candidate's shoes to ensure they have the best possible experience. We look forward to meeting you!