×
Register Here to Apply for Jobs or Post Jobs. X

Embedded Software Engineer

Job in Iowa City, Johnson County, Iowa, 52245, USA
Listing for: Pentangle Tech Services | P5 Group
Full Time position
Listed on 2026-10-11
Job specializations:
  • Software Development
    Unix/Linux, Embedded Systems/ Firmware/ IoT, Computer Software / Middleware
Salary/Wage Range or Industry Benchmark: 90000 - 135000 USD Yearly USD 90000.00 135000.00 YEAR
Job Description & How to Apply Below
Position: Embedded Software Engineer.
Embedded Software Engineer

Location:

iowa or ND

Duration:
Long Term

Job Responsibilities
  • Embedded Linux / BSP and Middleware Engineer – Autonomous Orchard Tractor
  • 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, tool chains, 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 / Open Embedded, Bit Bake, custom recipes, layers, image generation, and build troubleshooting.
  • L…
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
 
 
 
Search for further Jobs Here:
(Try combinations for better Results! Or enter less keywords for broader Results)
Location
Increase/decrease your Search Radius (miles)
0
200
Filters
Education Level
Experience Level (years)
Posted in last:
Salary