Software Controls and Algorithm Engineer

New Flyer of America Inc.
Auburn Hills, MI, United States
3 days ago
Apply on diversityjobs.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Working hours
Regular working hours

Tech stack

Microsoft Word Microsoft Excel Agile Methodology Artificial Intelligence Algorithm Design Unit Testing Code Generation Program Optimization Code Review Communications Protocols Databases DSpace
+34 more
Memory Management Dynamical Systems Embedded Software FreeRTOS Hardware-In-The-Loop Simulation Python (Programming Language) MATLAB Machine Learning Microsoft Office Microsoft PowerPoint Scrum Methodology Systems Development Life Cycle Rapid Prototyping Process Real-Time Operating Systems ISO/IEC 15504 Sensor Fusion Microsoft SharePoint Signal Processing Software Engineering Software Requirements Analysis Software Systems Stateflow Subversion System Programming Test Data Toolchain Software Organization Model-Driven Development Software Verification CAPL Mathworks Git Polarion Software Version Control

Job description

Software Controls and Algorithm Engineer is a mid-level position. You will design, develop, test, and maintain advanced control and algorithms of Battery Management System (BMS) and Vehicle Control Unit (VCU) software. You will also ensure all software development projects and initiatives are in conformance with the organization’s policies and objectives. You will work closely with engineering and service team members to deliver high-quality, reliable software solutions., * Design and implement control algorithms (e.g., PID, MPC, state estimation, sensor fusion) for real-time embedded systems.

  • Develop simulation models and perform system-level analysis using tools like MATLAB/Simulink, or Python.
  • Integrate control software with hardware platforms and validate performance through testing and calibration.
  • Conduct root cause analysis and optimize control performance based on test data and field feedback.
  • Support software verification and validation activities, including unit testing, HIL/SIL testing, and documentation.
  • Stay current with industry trends and emerging technologies in control systems and algorithm development.
  • Optimize code for performance, memory usage, and power efficiency.
  • Participate in code reviews and contribute to continuous improvement of development processes.
  • Document software design, implementation, and testing procedures.
  • Support the development and maturation of the SW Toolchain.
  • Adhere to software engineering processes to support efficient and effective high quality embedded software.
  • Collaborate with cross-functional teams to define software requirements and system specifications.

Requirements

  • Must possess strong written and oral communication skills as well as interpersonal skills
  • Diligent documentation keeping skills
  • Self-driven, flexible and adaptable personality
  • Proficiency with Microsoft Office tools, especially Project, Excel, Word, PowerPoint, and SharePoint
  • Builds safety, quality, and compliance into all actions; committed to continuous learning and self-improvement

Requirements

Experience/Knowledge

  • Minimum 5 years of experience in control theory, signal processing, and dynamic systems.
  • Proficiency in programming languages such as C, Python, or MATLAB/Simulink/Stateflow.
  • Experience with embedded systems and real-time operating systems (RTOS).
  • Familiarity with version control systems (e.g., SVN, Git) and software development best practices.
  • Experience with model-based design and auto-code generation.
  • Knowledge of machine learning or AI techniques applied to control systems.
  • Hands-on experience with hardware-in-the-loop (HIL) or software-in-the-loop (SIL) testing.
  • Basic understanding of embedded RTOS (e.g. SafeRTOS).
  • Basic understanding of low-level Software.
  • Basic understanding of communication protocols like SPI, CAN etc.
  • Experience in developing and executing SW integration and unit level testing and plans.
  • Experience with Rapid Prototyping systems, such as dSPACE, etc.
  • Proficient in using the Vector suite of CAN tools (CANalyzer, CANoe, CANape, ASAP, vCDM Studio), including experience with CAN database configuration and CAPL scripting.
  • Familiarity with MAAB (MathWorks Automotive Advisory Board) guidelines for model-based development.
  • Proficient in working with requirement management systems (e.g. Polarion) as well as generating Software Requirements from higher level requirements (e.g. System Requirements).
  • Experience working in software/system development processes and methodologies in regulated industry areas (E.g. Waterfall, Scrum, Agile, etc.)
  • Exposure (certification preferred) to ISO26262 and ASPICE.
  • Experience with high voltage battery and vehicle systems.

Equipment / Machines Used

  • Hands on experience with field and lab equipment (multimeters, High voltage PPE, oscilloscopes, function generators, logic analyzers etc).

Benefits & conditions

  • Health Care Plan (Medical, Dental & Vision)
  • Retirement Plan (401k, IRA)
  • Life Insurance (Basic, Voluntary & AD&D)
  • Paid Time Off (Vacation, Sick & Public Holidays)
  • Short Term & Long Term Disability
  • Training & Development

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on diversityjobs.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

1:19 min

Advancing autonomous driving capabilities with specialized software talent

Katrin Lehmann Katrin Lehmann +1 · Coffee With Developers

2:40 min

Motivations for transitioning legacy MATLAB repositories to Python

Michael Niebisch Michael Niebisch · World Congress 2024

6:21 min

Investigating push inefficiencies with upstream Git experts

Jonathan Creamer · Coffee With Developers

2:14 min

Custom domain controllers and vehicle communication networks

Denis Grahovac · World Congress 2021

3:20 min

Certifying safety-critical automotive software and deploying progressive testing strategies

David Romić · World Congress 2023

56 sec

Favorite git commands and the importance of patch commits

Eileen Uchitelle Eileen Uchitelle +1 · Coffee With Developers

Videos

See all

Related articles

See all