Embedded Software Engineer 3
Kasmo Global - Chicago, Illinois, United States, 60290
Work at Kasmo Global
Overview
- View job
Overview
Job Description:
The Embedded Software Engineer will design, develop, test, and evaluate embedded software and systems for Caterpillar's electronic controls hardware. The role involves low-layer software development, including OS integration, I/O drivers, and boot processes, ensuring efficiency, stability, and scalability of system resources.
Key Responsibilities: Design and implement embedded software solutions from requirements to production and commercial deployment. Develop and test low-layer software such as OS integration, I/O drivers, boot processes, and ECU/ECM interfacing. Analyze system efficiency, stability, and scalability, making necessary improvements. Write and code logical and physical database descriptions, collaborating with management or directing others in coding. Manage software lifecycle, including version control and configuration management. Research new technologies and development tools for embedded systems. Communicate technical information to customers, team members, suppliers, and other stakeholders. Support and advise engineers, managers, and marketing personnel on software-related matters. Perform product maintenance, requirements analysis, and feature enhancements. Troubleshoot issues and conduct unit/regression testing. Required Qualifications:
Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related field. 5-8 years of industry experience in embedded software development. Real-time embedded device driver development experience. Experience designing embedded electronics controls, display, or telematics software. Proficiency in ANSI C, Python, and Bash scripting. Hands-on experience with SPI/I2C peripheral interfacing, hardware diagnostics, OS configuration, and board initialization. Strong background in RTOS concepts, integration, and configuration. Proficiency in Git version management (Clearcase experience preferred). Experience with software development methodologies such as Agile. Debugging and troubleshooting experience using tools such as oscilloscopes. Preferred Qualifications:
Master's degree in a relevant field with industry experience or relevant internship/projects. Experience in non-volatile memory interfacing and chip-level embedded systems. Strong understanding of software design patterns and anti-patterns. Soft Skills:
Strong verbal and written communication skills. Excellent problem-solving skills and attention to detail. Ability to read schematics and data sheets for hardware components. Effective collaboration and teamwork abilities. Work Environment & Expectations:
Hybrid role requiring a minimum of three days onsite per week. Work includes reading client requirements, researching ECU hardware interfacing, designing and coding solutions, version management, and testing. Interaction with peers, technical leads, and cross-functional teams. Reason for Hiring:
Backfill position to support key embedded software development projects at Caterpillar.
This position provides an opportunity to work on advanced embedded systems, ensuring innovation and high-quality software solutions for Caterpillar's electronic controls hardware.