Find Jobs
Find Jobs Near You – Available Work in Your Location
Skip to job details
A
Actalent
Embedded Software Engineer
Career Insights for Embedded Software Engineer
See where this job fits in the broader career landscape. Knowing your career path helps you see what's possible from here.
Scorecard
Based on national data
Review key factors to help you decide if this role fits your goals. How is this calculated?
What they do
An Embedded Software Engineer designs or improves the embedded computer software that supports specialized hardware for certain products, devices or systems. Oversees the entire software development process. Analyzes customer or user needs, designs programs, writes code or instructs computer programmers, tests design, and documents programs. May assist with upgrades or maintenance.
$123,300 / year median in the U.S.
+11% projected growth
Job Description
Job Title:
Embedded Software Engineer Job Description This fully remote Embedded Software Engineer role focuses on designing and developing embedded firmware for innovative water quality instrumentation. You will work closely with cross-functional engineering teams to build new architectures and enhance existing products, contributing directly to solutions that protect water quality worldwide. The position offers the opportunity to work with complex embedded Linux systems, real-time operating systems, and bare-metal microcontrollers while collaborating in an Agile environment that emphasizes collaboration, continuous improvement, and technical excellence. Responsibilities + Design and develop embedded firmware solutions in C++ and C for new and existing water quality products running on microcontrollers, Linux, RTOS, and bare-metal platforms. + Collaborate in an Agile team environment, actively participating in daily scrums, weekly development discussions, and ongoing planning sessions. + Analyze product and system requirements, estimate development effort, and deliver reliable, high-impact firmware features on schedule. + Work closely with hardware engineers to integrate firmware with electronics, including reading hardware schematics and understanding industrial instrumentation architecture. + Troubleshoot and debug complex issues using tools such as oscilloscopes, logic analyzers, and digital multimeters, ensuring robust hardware-software interaction. + Modify and extend existing code bases to meet new requirements, improve performance, and enhance maintainability. + Implement and maintain CI/CD practices, including automated builds and unit testing, to support high-quality, repeatable firmware delivery. + Produce clear technical design documentation and contribute to system and product architecture discussions for new and existing platforms. + Develop and maintain device drivers and kernel-level components for embedded Linux systems, focusing on low-level hardware interaction. + Implement and support communication protocols such as I2C, SPI, UART, MODBUS, USB, and Ethernet within embedded systems. + Ensure code quality and reliability through rigorous debugging, testing, and code reviews across both software and hardware environments. + Engage in hands-on coding, building, deploying, and debugging activities throughout the full development lifecycle. + Participate in technical interviews and hands-on exercises to assess, mentor, and support the growth of engineering talent within the team. + Collaborate with diverse engineering disciplines in a highly integrated environment to solve system-level problems and define required interfaces. + Contribute to the development of new, ground-up architectures for instrumentation and embedded systems, helping shape the next generation of products. Essential Skills + Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related field, or equivalent applicable experience. + 3-5+ years of experience in C++ user-space development and C or embedded C programming for embedded systems. + 3-5+ years of experience working with 32-bit microcontrollers and embedded platforms, including Linux, RTOS, and bare-metal environments. + Strong understanding of computer architecture, memory technologies, and software build processes. + Proficiency in Agile methodologies, including experience working in Scrum-based teams. + Experience with device driver and kernel programming for embedded Linux, focusing on low-level hardware interaction. + Ability to read and interpret hardware schematics and code to low-level hardware interfaces. + Familiarity with communication protocols such as I2C, SPI, UART, MODBUS, USB, and Ethernet. + Strong debugging skills in both software and hardware environments, including experience with oscilloscopes, logic analyzers, and digital multimeters. + Experience working in embedded Linux environments, including development in a Linux desktop environment using IDE and command-line tools. + Proven ability to develop and maintain embedded software (firmware) in C++ and C for microcontrollers and Linux/RTOS/bare-metal platforms. + Experience implementing and maintaining CI/CD practices and unit testing for embedded software. + Ability to ensure code quality and reliability through systematic testing, debugging, and documentation. + Comfort working closely with hardware, including hands-on debugging and integration activities. + Ability to speak to industrial instrumentation architecture beyond general computer architecture, with a focus on embedded instrumentation systems. + Demonstrated ability to code and demonstrate competency in C++ in an embedded context. Additional Skills & Qualifications + Master's degree in Embedded Systems Engineering or a related discipline. + 5+ years of professional experience is strongly preferred; candidates with a minimum of 2-3 years may be considered if they meet core requirements and demonstrate a strong learning mindset. + Experience with embedded Linux build systems such as Yocto. + Experience with Zephyr or similar RTOS frameworks. + Proficiency with scripting languages such as Shell, Bash, and Python. + Understanding of networking fundamentals, including TCP/IP. + Experience developing in a Linux desktop environment using both IDEs and command-line interfaces. + Ability to produce clear, comprehensive technical design documentation. + Experience working in a diverse, inclusive, and collaborative environment. + Experience in the water quality industry or related industrial instrumentation fields. + Combination of hardware and software engineering skills, particularly in firmware and embedded software engineering. + Familiarity with industrial instrumentation architecture, including sensor interfaces and data acquisition systems. + Interest in contributing to new, ground-up architectures for embedded instrumentation and systems. + Strong communication skills, with the ability to collaborate effectively across cross-functional engineering teams. + Self-motivated, quick learner with a proactive, "hit the ground running" mindset suited for a fully remote role. Work Environment This role is 100% remote, and candidates must be fully prepared to work independently and productively from day one with minimal ramp-up, particularly in firmware development, C++, and embedded Linux/Yocto environments. You will collaborate daily with a large, campus-based engineering organization that operates from a three-building facility, including a purpose-built research and development building. The broader environment functions like an advanced design project, with nearly all capabilities kept in-house, such as a 10-meter EMC chamber, HALT chamber, PCA/SMT line, injection molding, fabrication, and full production and manufacturing operations. Teams are cross-functional and highly collaborative, bringing together multiple engineering disciplines to solve complex problems. A typical day includes a daily scrum meeting, progress updates on tasks and goals, collaborative troubleshooting with team members, and deep focus time for coding, building, deploying, and debugging firmware. Weekly development discussions focus on system-level issues, interface definitions, and problem areas. The culture emphasizes diversity, inclusion, collaboration, and professional growth, offering opportunities to make a measurable impact on global water quality while working with modern embedded technologies and tools. Job Type & Location This is a Contract to Hire position based out of Loveland, CO. Pay and Benefits The pay range for this position is $40.00 - $80.00/hr. Eligibility requirements apply to some benefits and may depend on your job classification and length of employment. Benefits are subject to change and may be subject to specific elections, plan, or program terms. If eligible, the benefits available for this temporary role may include the following:- Medical, dental & vision
- Critical Illness, Accident, and Hospital
- 401(k) Retirement Plan - Pre-tax and Roth post-tax contributions available
- Life Insurance (Voluntary Life & AD&D for the employee and dependents)
- Short and long-term disability
- Health Spending Account (HSA)
- Transportation benefits
- Employee Assistance Program
- Time Off/Leave (PTO, Vacation or Sick Leave) Workplace Type This is a fully remote position.