Embedded Software Engineer

CaterpillarMossville, IL
Onsite

About The Position

Your Work Shapes the World at Caterpillar Inc. When you join Caterpillar, you're joining a global team who cares not just about the work we do – but also about each other. We are the makers, problem solvers, and future world builders who are creating stronger, more sustainable communities. We don't just talk about progress and innovation here – we make it happen, with our customers, where we work and live. Together, we are building a better world, so we can all enjoy living in it. Job Summary: As an Embedded Software Engineer on the Power Systems team, you will play a hands‑on role in designing, developing, and deploying Caterpillar Electronic Systems and Controls that support the Electric Power Generation industry. In this role, you’ll work closely with experienced engineers to implement embedded software and control strategies while gradually contributing to system architecture and long‑term technical strategy as your experience grows. This position is ideal for someone who enjoys working close to the hardware, solving complex technical problems, and seeing their software directly impact real‑world products. A strong interest or background in embedded software development is especially valuable.

Requirements

  • Knowledge of embedded software development
  • Understands the basic structure and functioning of an embedded system
  • Understands and works with embedded programming languages
  • Applies coding best practices to develop reliable, maintainable, and efficient embedded software
  • Knowledge of Engine Control systems
  • Experience with SIL (Software‑In‑the‑Loop) simulation and validation
  • Emphasis on initiative and strong technical insight
  • Ability to diagnose and resolve software and system‑level issues through hands‑on testing and collaboration with cross‑functional teams
  • Knowledge of development and data analysis tools (e.g., CANape, CANcase, etc.)
  • Organizes and prioritizes the sequence of steps to remedy a situation
  • Identifies multiple possible causes for a problem based on prior experience and current research
  • Ability to solve a complex problem by breaking it down into component parts
  • Uses data‑driven analysis to evaluate performance, identify trends, and support technical decision‑making

Nice To Haves

  • A strong interest or background in embedded software development is especially valuable.

Responsibilities

  • Design, optimize, and implement embedded software and control strategies using C
  • Collaborate with cross‑functional development teams and program leads to integrate software into platform‑level solutions
  • Develop and execute unit tests to validate software functionality in bench and lab environments
  • Support verification and validation efforts to ensure software quality, reliability, and performance
  • Contribute to continuous improvement of software design practices, tools, and processes
  • Participate in software architecture discussions and design reviews, contributing ideas and learning best practices as you grow in experience
  • Collaborate with hardware, controls, and systems engineers to debug, diagnose, and resolve software and system‑level issues
  • Support documentation of software designs, requirements, and test results to ensure clarity, traceability, and long‑term maintainability

Benefits

  • Medical, dental, and vision benefits
  • Paid time off plan (Vacation, Holidays, Volunteer, etc.)
  • 401(k) savings plans
  • Health Savings Account (HSA)
  • Flexible Spending Accounts (FSAs)
  • Health Lifestyle Programs
  • Employee Assistance Program
  • Voluntary Benefits and Employee Discounts
  • Career Development
  • Incentive bonus
  • Disability benefits
  • Life Insurance
  • Parental leave
  • Adoption benefits
  • Tuition Reimbursement
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service