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

Senior Software Engineer - Embedded Linux

Job in Oshkosh, Winnebago County, Wisconsin, 54901, USA
Listing for: Oshkosh Corporation, Inc.
Full Time position
Listed on 2026-09-12
Job specializations:
  • Software Development
    Software Engineer, Unix/Linux, DevOps, Embedded Systems/ Firmware/ IoT
Salary/Wage Range or Industry Benchmark: 79000 - 127000 USD Yearly USD 79000.00 127000.00 YEAR
Job Description & How to Apply Below

At Oshkosh, we build, serve and protect people and communities around the world by designing and manufacturing some of the toughest specialty trucks and access equipment. We employ over 18,000 team members all united by a common purpose. Our engineering and product innovation help keep soldiers and firefighters safe, is critical in building and keeping communities clean and helps people do their jobs every day.

The Senior Software Engineer will design, develop, integrate, test, and maintain embedded Linux software used in production vehicle systems.

This role focuses on embedded Linux platform development and maintenance, Yocto-based Linux distributions, modern C/C++ application development, Qt-based user interfaces and services, automated testing, and software build and deployment infrastructure. The team member will be an integral part of multiple programs and will be expected to contribute across the complete software lifecycle, including architecture, requirements, implementation, code review, automated testing, continuous integration, release management, production support, and long-term platform maintenance.

The ideal candidate has strong software engineering fundamentals, extensive experience developing production C/C++ software on embedded Linux, and the ability to diagnose complex issues spanning application software, operating system services, libraries, build systems, and hardware interfaces.

YOUR IMPACT

Design, develop, integrate, test, and maintain production-quality software for embedded Linux platforms. Develop maintainable C/C++ applications, services, and user interfaces using modern C++ and Qt 6.8+. Develop and maintain embedded Linux platforms using Yocto Project, Bit Bake, Open Embedded, and associated BSPs, layers, recipes, and image configurations. Support platform lifecycle activities, including Linux/Qt migrations, dependency and security updates, toolchain changes, and BSP upgrades.

Diagnose complex issues across applications, operating systems, networking, device interfaces, and hardware/software boundaries. Support software integration, validation, and troubleshooting using bench test environments, target embedded hardware, and production vehicle platforms. Use Python for development tooling, automation, testing, build infrastructure, and data processing. Design software for reliability, maintainability, performance, resource efficiency, testability, and long-term support. Develop automated unit, integration, system, and Qt/QML tests using Google Test, Cpp Unit, Squish, or similar frameworks.

Develop and improve CI/CD pipelines for automated builds, analysis, testing, packaging, and releases while maintaining reproducible builds. Contribute to software architecture, requirements, design documentation, test plans, and other engineering artifacts. Lead and participate in code reviews, design reviews, root-cause analysis, and continuous improvement of software engineering practices. Collaborate across software, electrical, systems, controls, test, cybersecurity, manufacturing, suppliers, and other technical stakeholders.

Support software integration and validation on target hardware, simulation, and development environments. Evaluate and introduce tools, libraries, frameworks, and practices that improve software quality and developer productivity. Provide technical leadership, mentoring, and code review support to other engineers. Estimate development activities and communicate technical risks, dependencies, and schedule impacts. Follow applicable software development, configuration management, cybersecurity, functional safety, and CMMI processes.

Support software configuration, release, and lifecycle management activities. Travel as needed to support engineering, integration, and product testing. Perform other duties as assigned; regular attendance is required.

MINIMUM QUALIFICATIONS
  • Accred Bachelor's degree in Computer Engineering, Electrical Engineering, Software Engineering, or a related technical field.
  • Five (5) or more years of professional software development experience.
  • Strong C and C++ software development experience.
  • Strong professional experience developing and maintaining software for Linux or embedded Linux systems.
  • Experience with modern C++ and object-oriented software design.
  • Experience developing multithreaded and asynchronous software.
  • Professional experience with Yocto Project, Open Embedded, and Bit Bake.
  • Experience developing and maintaining custom Yocto layers, recipes, package…
Position Requirements
10+ Years work experience
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