Software Engineer I – Software Engineering

  • Location: Cary, North Carolina
  • Type: Contract
  • Job #107744

Software Engineer – Embedded Systems

Location: Cary, NC
Schedule: 1st Shift, 8:00 AM–5:00 PM, with some flexibility
Compensation: $45–$50/hr + benefits
Travel: Approximately 10% for local factory visits
Experience: 3+ years required
Work Authorization: Must be authorized to work in the U.S. without current or future visa sponsorship

Position Overview

We are seeking a mid-career Software Engineer to develop, integrate, test, and validate embedded software for Turf and Compact Utility equipment. This position combines hands-on embedded software development with model-based design, vehicle communication networks, controls, and system-level testing.

The engineer will work closely with software developers, testers, and engineering stakeholders to deliver reliable embedded features from requirements through vehicle-level validation.

Responsibilities

  • Develop and integrate embedded software for vehicle control systems.
  • Develop embedded applications using C/C++ and MATLAB/Simulink.
  • Perform requirements analysis and contribute to software system design and architecture.
  • Write and review software requirements.
  • Develop and maintain model-based software using MATLAB, Simulink, and Stateflow.
  • Participate in code reviews, software integration, and design reviews.
  • Perform unit, functional, integration, and vehicle-level testing.
  • Implement new features and resolve software defects.
  • Troubleshoot complex software, controls, electrical, and system-level issues.
  • Support embedded hardware, operating system, and driver integration.
  • Maintain feature-level software architecture across multiple vehicle models and configurations.
  • Collaborate with cross-functional engineering and testing teams throughout the software delivery lifecycle.

Required Qualifications

  • Bachelor’s degree in Electrical Engineering, Computer Engineering, Mechanical Engineering, or a related discipline.
  • 3+ years of relevant professional experience.
  • Embedded software development experience.
  • Experience developing embedded applications using C and/or C++.
  • Hands-on experience with MATLAB/Simulink.
  • Experience with Model-Based Design.
  • Knowledge of embedded operating systems and drivers.
  • Experience with CAN/J1939 communication networks.
  • Experience with unit and functional software testing.
  • Experience writing and reviewing software requirements.
  • Understanding of software development and delivery processes, including Agile methodologies.
  • Strong technical troubleshooting and problem-solving skills.
  • Strong written and verbal communication skills.

Preferred Qualifications

  • MATLAB Stateflow experience.
  • Control systems design and analysis experience.
  • Agricultural, automotive, off-highway, or mobile equipment experience.
  • Experience troubleshooting mechanical, electrical, or hydraulic systems.
  • Ability to read electrical schematics, technical drawings, and component data sheets.
  • Experience with continuous integration and automated build tools.
  • Experience with embedded development tools such as compilers, emulators, debuggers, and simulators.
  • Experience with CAN, LIN, Ethernet, and J1939 communication protocols.
  • Experience using laboratory equipment such as oscilloscopes and logic analyzers.
  • Experience taking embedded software from requirements through integration, testing, and final product validation.

Interview Process

Round 1: 30-minute Microsoft Teams screening
Round 2: 1-hour technical/team interview via Teams, with onsite participation preferred where possible.

#LI-DO1

#INDOEM

Scroll to Top