Skip to Content
Main Content

Software Engineer I - Microcontrollers

HED is an industry leader specializing in the design, manufacture, and application of innovative vehicle controls, displays, and telematics systems for on- and off-highway vehicle OEMs. Our application development tools, and engineering services enable OEMs flexibility and easy configurability to create customized vehicle control systems.

Are you passionate about embedded systems and eager to make a tangible impact on critical applications? Join HED as a Software Engineer I – Microcontrollers! In this role, you'll collaborate with seasoned experts, honing your skills while contributing to the development of cutting-edge embedded modules for fire trucks, construction equipment, and military vehicles. Your curiosity and pragmatic approach will drive continuous improvement in both your work and our processes. You'll engage in applying customer and industry specifications, authoring design documentation, and developing robust software that meets diverse requirements. If you're ready to grow and innovate, this is the perfect opportunity for you!

Essential Duties and Responsibilities

  • Work in an agile team culture, closely collaborating with other team members.
  • Participate in developing clear project requirements based on (internal / external) customer needs, government regulations, and industry standards.
  • Support development and maintenance of microcontroller-based software and lifecycle data including software requirements, design documentation, source code, test procedures, and test reports from automated, manual, and unit tests.
  • Identify, track, and correct software defects.
  • Support root-cause analysis and corrective action activities.
  • Collaborate with outsourced vendors.
  • Collaborate with the electrical design team on new hardware designs.
  • Support investigations into issues that are impacting Production’s ability to build and deliver products.
  • Provide customer technical support.
  • Other typical software development tasks as needed.
    .

An individual in this position must be able to successfully perform the essential duties and responsibilities listed above. Reasonable accommodation may be made to enable individuals with disabilities to perform the essential functions of this position.

The above list reflects the general details necessary to describe the principle and essential functions of the position and shall not be construed as the only duties that may be assigned for the position.

Minimum Qualifications

    Education

  • BS Degree in Electrical Engineering, Computer Engineering, or related field

    Experience

  • Zero to Five years of relevant experience

    Skills

  • Proficient with programming in C
  • Proficient with working in a Windows environment, including MS Word and Excel
  • Experience working with hardware, schematics, and component datasheets
  • Experience working with standard lab equipment such as power supplied, digital multimeters, oscilloscopes, and logic analyzers
  • Knowledge of programming concepts, practices, and procedures
  • Knowledge of software version control
  • Knowledge of test equipment such as emulators, debuggers, multimeters, and oscilloscopes to debug and verify proper operation of hardware and software

    Abilities

  • Participate in cross functional teams (matrix environment)
  • Work in an agile development environment
  • Demonstrate good verbal and communication skills
  • Create product documentation such as test reports and user guides
  • Travel typically under 5% 

Preferred Qualifications

    Skills

  • Proficient with scripting languages such as Bash or Python
  • Proficient with C++
  • Experience using Git for software version control
  • Experience working with open-source software
  • Knowledge of Real-Time Operating Systems such as FreeRTOS
  • Knowledge of scrum development practices 
  • Knowledge of software quality best practices (build/test automation, software design, code reviews)
  • Knowledge of implementing unit tests for software including test driven development
  • Knowledge implementing build pipelines
  • Knowledge of developing drivers for microcontroller peripherals
  • Knowledge developing boot loaders and flash reprogramming
  • Knowledge of PWM drivers
  • Knowledge of ADC drivers
  • Knowledge of serial communications protocols such as CAN, LIN, and Ethernet

    Abilities

  • Demonstrate good software and hardware debugging skills
  • Support root-cause analysis investigations
  • Work on embedded hardware systems
  • Perform pull requests for software updates
  • Read electrical schematics and provide feedback during design reviews
  • Use multimeters, oscilloscopes, logic analyzersand other test equipment to troubleshoot and verify the proper operation of software and hardware
     

Physical and Mental Demands

While performing the duties of this job, the employee is frequently required to sit, talk and/or hear, and/or use hands to finger, handle, or touch objects, tools, or controls. The employee is occasionally required to stand, and/or walk. The employee must occasionally lift and/or move up to 10 pounds while moving files or small packages. Specific vision abilities required by this job include close vision and the ability to adjust focus. The mental and physical requirements described here are representative of those that must be met by an individual to successfully perform the essential functions of this position.

Working Environment

Work is performed in an office environment. The noise level in the work environment is usually moderate. Infrequent travel to a customer’s location may be required and may include factory or test environments. The work environment characteristics described here are representative of those, an individual encounters while performing the essential functions of this position.


 

Sound Interesting? Apply now!

Email your resume to adankmeyer@hedcontrols.com