Software Engineer
The Software Engineer role involves developing and optimizing embedded C++ software for real-time, resource-constrained systems in collaboration with hardware engineers. This contract position focuses on enhancing product performance and reliability within a global manufacturing and engineering services environment, offering exposure to advanced embedded technologies and high-impact projects.
About Careertakes
👉 Important disclosure: Careertakes is a third-party recruiting platform supporting this hiring process. If selected, you will be employed directly by our client, Manufacturing | Engineering Services.
Applicants for this role may also receive access to additional matched opportunities through the Careertakes platform.
Role Overview
We are recruiting on behalf of a confidential client in the Manufacturing | Engineering Services sector for an on-site, contract Embedded Software Engineer (Embedded C++). In this role you will develop, test, and optimize real-time embedded software and work closely with hardware engineers to integrate software into product designs for industrial applications.
What You’ll Do
- Design, develop, and unit-test embedded C++ software for resource-constrained, real-time systems.
- Debug and optimize firmware to improve performance, memory usage, and reliability.
- Integrate software with hardware using I2C, SPI, UART and other embedded interfaces.
- Work with RTOS platforms (e.g., FreeRTOS, Zephyr) to implement task scheduling, synchronization, and inter-process communication.
- Use hardware debugging tools (JTAG, oscilloscopes, logic analyzers) to diagnose and resolve issues.
- Participate in code reviews, follow embedded coding standards, and maintain technical documentation.
- Collaborate in cross-functional teams (hardware, test, product) to define requirements and deliverables.
Required Qualifications
- Bachelor’s degree in Computer Engineering, Electrical Engineering, Computer Science, or related field.
- Minimum 2 years’ hands-on experience developing embedded software in C++.
- Proven experience debugging embedded systems with JTAG, oscilloscopes, or logic analyzers.
- Experience with real-time operating systems such as FreeRTOS or Zephyr.
- Solid knowledge of hardware-software integration and serial protocols (I2C, SPI, UART).
- Familiarity with version control (Git) and unit testing frameworks for embedded C++.
- Strong problem-solving skills and the ability to communicate clearly with hardware and test engineers.
Nice to Have
- Experience with low-power design techniques or performance tuning for constrained MCUs.
- Exposure to continuous integration for embedded projects or automated hardware-in-the-loop testing.
- Prior work in industrial or manufacturing-focused embedded products.
Why This Opportunity
- Work on impactful embedded products with a confidential client in the Manufacturing | Engineering Services industry.
- Contract role with competitive compensation based on experience.
- Gain exposure to RTOS-based designs and hands-on hardware integration.
- Collaborative, cross-functional engineering environment.
Location & Employment Type
- On-site — Arizona (AZ)
- Employment type: Contract
Equal Opportunity & Hiring Transparency
Careertakes and our client are Equal Opportunity Employers committed to building a diverse and inclusive workforce. We prohibit discrimination or harassment of any kind.
To support a fair and efficient hiring process, AI tools may be used to assist with application review or resume screening. These tools do not replace human decision-making. Final hiring decisions are made by people.
If you have questions about how your data is used, please contact us directly.
Negotiate a higher salary! Check the salary ranges for this job type in your area.
View My Salary Range