Embedded Software Engineer - Platform Software

Caterpillar Inc.Mossville, IL
$97,530 - $146,290Onsite

About The Position

As a part of the Platform software team, the Embedded Software Engineer will design, develop, and deliver Low level embedded software for Next Gen ECUs used in Caterpillar NPI programs.

Requirements

  • Accredited BS degree in an Electrical Engineering or Computer Engineering field required.
  • Provides effective technical solutions to routine functional challenges via sound technical competence, effectively examining implications of events and issues.
  • Effectively performs the technical job aspects, continuously building knowledge and keeping up-to-date on technical and procedural job components.
  • Applies technical operating and project standards based on achieving excellence in delivered products, technologies and services.
  • Applies current procedures and technologies to help resolve technical issues in one's general area of technical competence.
  • Helps others solve technical or procedural problems or issues.
  • Approaches a situation or problem by defining the problem or issue and determining its significance.
  • Makes a systematic comparison of two or more alternative solutions.
  • Uses flow charts, Pareto charts, fish diagrams, etc. to disclose meaningful data patterns.
  • Identifies the major forces, events and people impacting and impacted by the situation at hand.
  • Uses logic and intuition to make inferences about the meaning of the data and arrive at conclusions.
  • Delivers helpful feedback that focuses on behaviors without offending the recipient.
  • Listens to feedback without defensiveness and uses it for own communication effectiveness.
  • Makes oral presentations and writes reports needed for own work.
  • Avoids technical jargon when inappropriate.
  • Looks for and considers non-verbal cues from individuals and groups.
  • Explains own role and responsibility within team.
  • Actively participates in team meetings.
  • Shares information, knowledge, and experiences openly and proactively.
  • Describes team mission and objectives in the context of results to be achieved.
  • Demonstrates open, friendly, accepting, and supportive behaviors with team members.
  • Follows policies, practices and standards for determining functional and informational requirements.
  • Confirms deliverables associated with requirements analysis.
  • Communicates with clients, peers, technical experts, and technical references to elicit and gather requirements.
  • Participates in the preparation of detailed documentation and requirements.
  • Utilizes specific organizational methods, tools and techniques for requirements analysis.
  • Supports the project leader in developing and executing system test plans.
  • Evaluates system documentation and user manuals for usability, accuracy and completeness.
  • Executes test cases, analyzes test results and reports on findings regularly.
  • Tests system components for compliance with functional requirements.
  • Participates in the testing of a system's ability to recover from hardware or software failures.
  • Discovers, analyzes, and resolves hardware, software or application problems.
  • Utilizes engineering tools (e.g. oscilloscopes, debuggers, logic analyzers) effectively to troubleshoot system behaviors.
  • Works with vendor-specific diagnostic guides, tools and utilities.
  • Handles calls related to product features, applications, and compatibility standards.
  • Analyzes code, logs, and current systems as part of advanced troubleshooting.
  • Records and reports specific technical problems, solving processes and tools that have been used.

Nice To Haves

  • Solid experience in research, design, develop, and test of low-layer embedded software, such as RTOS integrations, I/O drivers, boot loaders, non-volatile memory interfacing, board initializations, or communication networks (e.g. J1939/CAN/Ethernet) for electronic controls modules.
  • Has experience in real-time embedded software development using C or C++ programming.
  • Familiar with AUTOSAR standard and Modular architecture
  • Utilized Python and shell scripting for automating automated build processes.
  • Uses software design patterns & anti-patterns, per educational, professional, and personal training.
  • Familiar with version management tools (e.g. Git) and related merging/management techniques.
  • Engaged in software team development/planning processes such as Agile
  • Participates in technical and code reviews.

Responsibilities

  • Gathering and analyzing functional and technical requirements.
  • Preparing and peer-reviewing design proposals.
  • Writing and implementing source code for embedded systems and enhancing code samples of existing systems.
  • Testing and debugging embedded system software using different tools/methods available to improve code quality and optimize system performance.

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