Cube Hub logo

Cube Hub

Embedded Software Engineer

Cube Hub

📍 Cary, NC, United States 🇺🇸

contract
mid-level
on-site
Posted —

Key Skills

C/C++MATLABSimulinkCANUnitTesting

Industry

AutomotiveConsumer Electronics

Job Description

Location: Cary, NC (Onsite preferred)

Job Type: Contract

Experience Required: Mid-Career (No Recent Graduates)

Job Summary

We are seeking a Mid-Level Embedded Software Engineer to join the Turf & Compact Utility engineering team in Cary, NC. In this role, you will collaborate with software developers, testers, and cross-functional stakeholders to design, develop, integrate, and validate embedded software solutions for vehicle control systems. The ideal candidate has strong experience in embedded C/C++ development, MATLAB/Simulink, embedded operating systems, CAN/J1939 communication, and software testing.

Required Skills (Priority Order)

  1. Strong experience in Embedded Software Development using C/C++
  2. Experience with MATLAB, Simulink, Stateflow, and Model-Based Design
  3. Knowledge of Embedded Operating Systems and device drivers
  4. Experience with CAN/J1939 communication protocols
  5. Experience with Unit Testing and Functional Testing
  6. Experience writing and reviewing software requirements
  7. Knowledge of Agile software development methodologies
  8. Strong technical problem-solving and debugging skills
  9. Excellent written and verbal communication skills
  10. Understanding of software development lifecycle and delivery processes

Preferred Qualifications

  • Experience with control systems design and analysis
  • Experience with model-based software development tools
  • Knowledge of mechanical, electrical, or hydraulic systems
  • Ability to read electrical schematics and component datasheets
  • Experience with Continuous Integration (CI) and automated build tools
  • Experience using embedded development tools such as emulators, compilers, and simulators
  • Familiarity with automotive communication protocols including CAN, LIN, and Ethernet
  • Experience using laboratory equipment such as Logic Analyzers and Oscilloscopes
  • Passion for embedded engineering and learning new technologies

Key Responsibilities

  • Analyze software requirements and develop embedded software solutions.
  • Design software architecture and integrate software components.
  • Develop embedded applications using C/C++ and MATLAB/Simulink .
  • Implement new features and resolve software defects.
  • Participate in code reviews, software integration, and testing activities.
  • Perform unit, integration, functional, and vehicle-level testing.
  • Support software validation, tuning, and troubleshooting.
  • Maintain software architecture across multiple vehicle models and configurations.
  • Investigate and resolve complex software issues.
  • Collaborate with cross-functional engineering teams throughout the development lifecycle.

Education

Bachelor's degree in one of the following:

  • Electrical Engineering
  • Computer Engineering
  • Mechanical Engineering

Equivalent relevant work experience may also be considered.

Interview Process

  • Round 1: 30-minute Microsoft Teams screening
  • Round 2: 1-hour Microsoft Teams technical interview
  • Onsite interview preferred