Embedded Software Engineer

  • Harsco Corporation
  • Ludington, MI 49431, USA
  • Nov 09, 2020
[Information Technology]

Job Description

Company Description
Harsco is recognized for technical leadership and worldwide experience in virtually all major aspects of railway track maintenance. We enable railroads to operate at peak efficiency over smooth, precisely aligned track that increases railway safety while reducing fuel consumption and other key operating costs. Our broad array of equipment and services support every type of railway operator, from major national and international railway systems, to short lines and high-speed urban transit networks.
Job Description
Big! Yellow! Complex! Equipment!
Think of the controls needed to operate all the on-board systems of a locomotive, then add hydraulics, pneumatics, GPS, IoT, and even standalone software packages. We are the leading provider of technically advanced equipment to the Rail industry that improves safety and efficiency around the world. Join our team of over 40 Software Engineers; part of a global team of over 100 engineers in this design-driven environment.
As Embedded Software Engineer - Controls, youll design and develop embedded software used to control complex railway maintenance equipment. The Senior Embedded Software Engineer - Controls will lead full-cycle development projects from requirements through delivery and subsequent field support.
You have your choice of our office locations in Columbia, SC or Ludington, MI.
Domestic (U.S. residents) relocation assistance is available. Visa sponsorship will be considered.
Job Requirements:
Basic requirements:
You must have a combination of education and experience as follows:
Bachelors degree in Software, Electronic, Computer or other similar Engineering discipline with 3+ years of experience described below OR
Associates degree in Software, Electronic, Computer or other similar Engineering discipline with 7+ years of experience described below OR
10+ years of design experience as outlined below with no technical degree
Creation of embedded control code in C++
Experience with Visual Studio and Windows
CANBus network experience (SAE J1939 or CAN Open) and other fieldbus systems.
Experience with configuration management tools such as SVN
Preferred Qualifications:
Experience with complex controls of heavy mobile equipment, including hydraulics and pneumatics
Exposure to requirements management (Jama) and issue tracking (Jira)
Robotics, device control and distributed I/O controls
Support hydraulic and electrical controls engineering
Experience with wired and wireless communication protocols
Ability to develop original algorithms, create code and write test cases
Ability to work effectively across functions in a highly matrixed environment
Additional Information
Associated topics: algorithm, application, backend, c++, c#, developer, devops, programming, software engineer, software programmer