> Markdown version of [/jobs/ext/2171988-embedded-software-engineer-platform-software](https://www.wearedevelopers.com/jobs/ext/2171988-embedded-software-engineer-platform-software). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Embedded Software Engineer - Platform Software - **Company:** Caterpillar - **Location:** Mossville, IL, United States - **Salary:** $97,530.0 - $146,290.0 - **Contract:** Permanent contract - **Skills:** Agile Methodology, AUTomotive Open System Architecture (AUTOSAR), Booting (BIOS), C++ (Programming Language), Software Documentation, Code Review, Computer Engineering, Software Debugging, Software Design Patterns, Embedded Software, Ethernet, Python (Programming Language), Non-Volatile Memory, Pareto Chart, Real-Time Operating Systems, Software Tools, Shell Script, System Software, System Testing, Git, Build Process, Software Version Control - **Published:** August 21, 2026 - **Apply:** https://www.techcareers.com/job.asp?id=3361190748&tx=JT10092UYD&pt=1&aff=0B19D771-A501-4A5E-8338-2A822B784D54&utm_source=Job%20Feed&utm_medium=textkernel&utm_campaign=DE&utm_term=0B19D771-A501-4A5E-8338-2A822B784D54 ## About the Role Accredited BS degree in an Electrical Engineering or Computer Engineering field required., * 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. ## Description * 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. Analytical Thinking: * 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. Effective Communications: * 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. Teamwork: * 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. Requirements Analysis: * 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. System Testing: * 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. Technical Troubleshooting: * 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. ## Related Videos - [Are Code Reviews Worth It? Insights from 16 Years of Review Data](https://www.wearedevelopers.com/videos/1135-are-code-reviews-worth-it-insights-from-16-years-of-review-data) - [The Gashlycrumb Tinies of AI Networking You Must Know (or Languish!)](https://www.wearedevelopers.com/videos/2067-the-gashlycrumb-tinies-of-ai-networking-you-must-know-or-languish) - [How a Small Team Shrank a Microsoft Monorepo by 94%](https://www.wearedevelopers.com/videos/1236-how-a-small-team-shrank-a-microsoft-monorepo-by-94) - [Agile work at CARIAD – Creating a customer web application for controlling the vehicle ](https://www.wearedevelopers.com/videos/200-agile-work-at-cariad-creating-a-customer-web-application-for-controlling-the-vehicle) - [Git for Code Reviews](https://www.wearedevelopers.com/videos/429-git-for-code-reviews) - [Building a hypercar from scratch](https://www.wearedevelopers.com/videos/607-building-a-hypercar-from-scratch) ## Related Articles - [How software is steering vehicle technology](https://www.wearedevelopers.com/magazine/515-how-software-is-steering-vehicle-technology) - [What is Software Engineering?](https://www.wearedevelopers.com/magazine/289-what-is-software-engineering) - [Where to Find Entry-Level Software Engineering Jobs](https://www.wearedevelopers.com/magazine/397-where-to-find-entry-level-software-engineering-jobs) - [7 Important Tips That Every Software Developer Should Know](https://www.wearedevelopers.com/magazine/101-7-important-tips-that-every-software-developer-should-know) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Now is the time for industrialized software development](https://www.wearedevelopers.com/magazine/601-now-is-the-time-for-industrialized-software-development)