Embedded Software Engineer

Job Category: Engineer
Job Type: Onsite
Job Location: Illinois Mossville

Job Description

Job Id:
JPS-2097

*Copy Job Id. It is required to apply for this specific role.

Job Description

Description:

Research, design, develop, build, and test the low-layer software, such as OS integration, I/O drivers, boot, etc., which interfaces with the Client’s wide variety of electronic controls hardware (i.e. ECU/ECMs). This assignment develops the low-layer software, such as I/O drivers, OS integration & configuration, boot, etc., which interfaces with the Client’s wide variety of electronic controls hardware (i.e. ECU/ECMs).

 

Depending upon the phase of the assignment, typical day would range from reading the client requirements, researching applicable ECU hardware/interfacing requirements, designing solutions, working with peers & tech leads to finalize solutions, coding solution in C, manage versioning, unit testing, and/or regression testing.

Responsibilities:

Key areas of responsibility encountered in this role may include any or all of the following: concept, design, test, document, and promote new software features and processes; perform requirements analysis and decomposition; evaluate new languages, development tools, or processes; perform product maintenance; manage the software lifecycle through version control and configuration management; keep up to date on new technologies or develop new technologies; communicate technical information to customers, team members, suppliers and other units; and support and advise other engineers, managers, marketing personnel, customers and suppliers.

 

Techinical Skills Required:

  • Real world real-time embedded device driver experience is key requirement.
  • Experience designing embedded electronics controls, display, or telematics software, including development of device drivers, SPI/I2C peripheral interfacing, hardware diagnostics, operating system integration/configurations, non-volatile memory interfacing, board initialization, and other chip-level interfacing.
  • Proficiency in Git version mgmt required. (Clearcase experience preferred.)
  • Experience troubleshooting/debugging using tools such as oscilloscopes
  • Experience with control software design patterns and anti-patterns, Bash shell, ANSI C, Python, and other programming languages.
  • Experience with software development processes such as Agile.

 

Disqualifiers/Red Flags:

  • Test engineering, controls engineering are not primary focuses. Can be part of work experience but should not be sole experience. Core skills above should be reflected in bulk of work experience.

Soft Skills Required:

  • Verbal and written communication skills
  • Problem solving skills, customer service and interpersonal skills.
  • Knowledge of reading schematics and data sheets for components.
  • Ability to troubleshoot issues and make system changes as needed to resolve issue.

Education & Experience Required:

  • Minimum BS in Computer Engineering / Electrical Engineering required. Comp Sci or comparable may be considered if experience is relevant.
  • 5-8 yrs industry experience.
  • Will accept Master’s or higher relevant internship/project experience toward minimum.