Embedded Software Engineer

Caterpillar · Industrial · Wuxi, Jiangsu

Embedded Software Engineer responsible for developing embedded software for Core Information systems supporting connectivity and Vision products, including coding, configuration, integration, building, and testing for Display or Telematics systems. Role involves verification, validation, requirements development, bench-level testing, and defect resolution.

What you'd actually do

  1. Design, review and analyze software requirements.
  2. Perform software coding, testing, integration and configuration
  3. Develop, execute, and document test plans
  4. Set up and configure test bench hardware, harnesses, models, and software
  5. Conduct mandatory, feature-specific, and full regression testing using manual, automated, and simulation methods

Skills

Required

  • Embedded software development
  • Software coding
  • Software testing
  • Software integration
  • Software configuration
  • Requirements analysis
  • Test plan development
  • Test bench setup and configuration
  • Regression testing
  • Manual testing
  • Automated testing
  • Simulation methods
  • Customer support
  • System troubleshooting
  • Software troubleshooting
  • Component-based development
  • Object-oriented development
  • Programming in a specific language
  • Platform-specific development
  • Interpreting functional and technical blueprints
  • Structuring technical components
  • Participating in technical and code reviews
  • Following policies, practices, and standards for requirements analysis
  • Confirming deliverables associated with requirements analysis
  • Communicating with customers and users to elicit and gather client requirements
  • Preparing detailed documentation and requirements
  • Utilizing specific organizational methods, tools and techniques for requirements analysis
  • Utilizing hardware and software-in-the-loop tools & methods
  • Applying electronic system knowledge of telematics, displays, and J1939 datalink communication
  • Using tools such as Caterpillar Electronic Technician, or Lauterbach debugger
  • Documenting standard processes and procedures involved in system testing
  • Executing test cases
  • Analyzing test results
  • Reporting on findings
  • Identifying common errors in system testing
  • Discovering, analyzing, and resolving hardware, software or application problems
  • Working with proprietary and third-party diagnostic tools
  • Analyzing code, logs, and current systems
  • Recording and reporting specific technical problems, solving processes and tools

Nice to have

  • Mechatronics Engineering
  • Electrical Engineering
  • Computer Engineering
  • Computer Science
  • Mechanical Engineering
  • Core information product and application features
  • Technical solutions to routine functional challenges
  • Building knowledge and keeping up to date
  • Applying technical operating and project standards
  • Applying current procedures and technologies
  • Helping others solve technical or procedural problems