Embedded Software Engineer Jobs in Iowa
Embedded Software Engineer jobs in Iowa are open across Cedar Rapids, Dubuque, and Hiawatha and other Iowa metros, with employers like Collins Aerospace, John Deere, and Emerson hiring at every experience level. Scan the live roles below and apply to whichever ones fit.
Find JobsOverview
Showing 5 of 26+ Embedded Software Engineer jobs











Job Title: Embedded Software Engineer
Location: iowa or ND
Duration: Long Term
Job Responsibilities
- Support the Automation Core Software team on an autonomous orchard tractor program, contributing to embedded Linux, BSP, middleware, hardware abstraction, communication, integration, and validation activities.
- Work in one of two primary technical tracks: Board Support Package (BSP) development or Middleware / middle-layer software development.
- Develop, integrate, test, and document production-quality embedded software using Deere processes, tools, sprint cadence, and engineering standards.
- Collaborate frequently with customer engineering teams, suppliers, and cross-functional stakeholders to resolve technical issues, clarify requirements, and deliver working software increments.
- Support either remote middleware development or preferably on-site BSP development.
BSP Track Key Responsibilities
- Develop and maintain embedded Linux BSPs for target controller hardware.
- Work with Yocto, recipes, layers, toolchains, root file systems, and Linux image builds.
- Configure and debug bootloaders such as U-Boot, including board startup, clocks, memory, and pin configuration.
- Configure and customize the Linux kernel, device tree, drivers, and board support files.
- Bring up new hardware and debug boot, kernel, driver, and hardware/software integration issues.
- Validate BSP functionality through unit, integration, regression, and release testing.
- Support source control, branching, tagging, release notes, build instructions, and technical documentation.
Middleware Track Key Responsibilities
- Design and develop middleware software that connects the BSP, hardware interfaces, and application layer.
- Develop Hardware Abstraction Layer components to standardize hardware access and improve portability across platforms.
- Build core middleware services such as IPC, configuration management, resource management, scheduling, and task coordination.
- Support communication interfaces and protocols, including CAN, J1939, and Linux SocketCAN.
- Support data handling, including serialization, deserialization, caching, persistence, and system-state management.
- Define APIs, support application integration, and optimize deployable components such as Docker containers.
- Develop unit and integration tests using the existing test framework and target controller hardware where needed.
- Validate middleware performance, fault handling, recovery behavior, latency, throughput, memory usage, and resource utilization.
Required Qualifications
- Bachelor’s or Master’s degree in Electrical Engineering, Computer Engineering, Software Engineering, Computer Science, or a related technical discipline.
- 3+ years of professional embedded software experience; senior candidates with deeper BSP, middleware, Linux, or architecture experience are strongly encouraged.
- Hands-on experience developing embedded software in C and/or C++ on Linux-based platforms.
- Experience with embedded Linux development, debugging, integration, and testing in a hardware-dependent environment.
- Working knowledge of Git-based version control, Agile/Scrum delivery, defect tracking, code reviews, and technical documentation.
- Ability to work independently in the assigned engagement model: remote collaboration for Middleware roles and preferably on-site support for BSP roles involving board bring-up, hardware access, and integration/debug activities.
- Strong written and verbal communication skills, including the ability to document requirements, design decisions, interfaces, test results, and technical issues.
Preferred / Nice-to-Have Experience
- Yocto Project / OpenEmbedded, BitBake, custom recipes, layers, image generation, and build troubleshooting.
- Linux kernel configuration, device tree, U-Boot, driver development, board bring-up, root filesystem generation, and hardware/software debug.
- Middleware, HAL, API design, microservices, IPC, scheduling, resource management, configuration management, and service-oriented embedded architectures.
- CAN, J1939, SocketCAN, Ethernet, sensor integration, machine communication networks, or autonomous/off-highway vehicle systems.
- Docker or containerized embedded application deployment, including container size optimization and integration into embedded Linux targets.
- CI/CD build automation, automated regression testing, hardware-in-the-loop testing, and release/configuration management.
- Experience in agriculture, off-highway equipment, autonomous systems, robotics, automotive, industrial controls, or safety-/mission-critical embedded systems.
See All 26 Embedded Software Engineer Jobs in Iowa
Find roles in Iowa that match your experience and apply in just a few clicks.
Find JobsEmbedded Software Engineer Jobs by City in Iowa
Where Iowa roles are concentrated, by current openings.
Embedded Software Engineer Job Market in Iowa
A snapshot from current Iowa openings, updated as new roles post.
Who's Hiring
- Collins Aerospace17

- John Deere2

- Emerson1

- Collabera1

- Crystal1

Top Industries Hiring
- Aerospace & Defense17
- Manufacturing3
- Technology & Software1
- Consulting & Professional Services1
What Iowa Employers Look For
The qualifications that appear most often in embedded software engineer jobs across Iowa.
- Proficiency in C or C++ for bare-metal and RTOS-based embedded development
- Experience with real-time operating systems such as FreeRTOS, VxWorks, or Zephyr
- Familiarity with communication protocols including UART, SPI, I2C, CAN, and Ethernet
- Hands-on debugging with JTAG, oscilloscopes, logic analyzers, and in-circuit emulators
- Bachelor's degree in electrical engineering, computer engineering, or computer science
- Knowledge of low-level hardware-software integration including memory-mapped I/O and interrupt handling
Embedded Software Engineer Jobs in Iowa: Frequently Asked Questions
How many embedded software engineer jobs are there in Iowa?
There are 26+ embedded software engineer openings in Iowa on Migrate Mate as of June 2026, with the most roles in Cedar Rapids, Dubuque, and Hiawatha. New positions post regularly as employers across Iowa hire.
How much do embedded software engineers make in Iowa?
Embedded software engineers in Iowa earn a median of about $114,890 a year, based on May 2025 Bureau of Labor Statistics wage data, ranging from around $74,390 for the lowest 10% to over $165,880 for the top 10%. Pay rises with experience, specialty, and employer.
Which Iowa cities have the most embedded software engineer jobs?
Cedar Rapids, Dubuque, and Hiawatha have the most embedded software engineer openings in Iowa right now, with additional roles spread across smaller metros statewide.
Which companies hire embedded software engineers in Iowa?
Iowa embedded software engineer roles are posted by Collins Aerospace, John Deere, and Emerson and others right now, based on current listings on Migrate Mate as of June 2026.
Are there remote embedded software engineer jobs in Iowa?
Yes. About 0% of embedded software engineer openings tied to Iowa are remote or hybrid as of June 2026. The rest are on-site roles based in Iowa metros.
How do I apply for embedded software engineer jobs in Iowa?
You can apply to embedded software engineer jobs in Iowa directly on Migrate Mate. Search the listings above, find roles that match your experience and preferred Iowa location, then apply to each one that fits.
See All 26 Embedded Software Engineer Jobs in Iowa
Find roles in Iowa that match your experience and apply in just a few clicks.
Find Jobs