Embedded Software Engineer
Aversan Inc. (www.aversan.com) is a trusted multi-service engineering and electronics manufacturing company. Aversan delivers leading-edge and reliable safety-critical electronics and software systems to the aerospace, defense, and space industries. We are currently seeking a qualified Embedded Software Engineer to join our team.
Location: London, ON
Description The embedded software team creates and produces software operating on embedded hardware within the vehicle envelope. They design, develop, and maintain software for real-time embedded vehicle applications such as power distribution, sensor subsystems, and automotive software control systems.
Responsibilities
-
Develop embedded software for use on Light Armoured Vehicle (LAV) products using C and C++.
-
Follow established organization software processes and plans for developing software e.g. peer reviews, software requirements specification, test procedures/results, software configuration management, etc.
-
Work within both Agile and Waterfall software development frameworks.
-
Work with design engineers and system engineers as needed to develop software.
-
Evaluate impact of hardware on software performance, and recommend changes to hardware designers, if required.
-
Write, test, and maintain code for automotive software applications.
-
Create and maintain technical documentation, including design specifications, user manuals, and release notes.
-
Document code and development processes for future reference and compliance.
-
Participate in code reviews, peer reviews, and process improvements, offering suggestions and constructive feedback to others.
-
Provide troubleshooting support and technical assistance for software related issues, analyzing and resolving customer reported problems.
-
Support software activities in a variety of environments (e.g. Office, System Integration Lab (SIL), on-vehicle, and external test sites).
Basic Qualifications
-
University Degree or College Diploma in a Computer Science, Computer Engineering, Software Engineering, Electrical Engineering, Mechatronics Engineering, or related field of study
-
Minimum 2-3 year relevant experience
-
Basic computer skills in MS Office, including Word, Excel and PowerPoint
-
Ability to travel (5% Cdn) and (5% US & International) and possess/be able to acquire and maintain a valid passport
-
Must be able to meet Anthropometrical Size Requirements for confined space Preferred Qualifications
-
Development experience with C and/or C++
-
Experience with:
-
Eclipse-based IDEs
-
GIT
-
Unit testing frameworks (e.g. Parasoft)
-
Static Code Analysis
-
DevOps tools (e.g. JIRA, Bitbucket, Bamboo)
-
Working knowledge in the following areas:
-
RTOS (e.g. FreeRTOS, QNX)
-
Safety-critical code
-
Bootloaders
-
Framework design
-
Knowledge of serial and Ethernet protocols for communication and data logging, such as:
-
SAE J1939 (ISO11898, CAN 2.0B)
-
DDS
-
SSL
-
RS232
-
Exposure to various standards:
-
Software development: MISRA, AutoSAR
-
Safety-critical: ISO 26262, MIL-STD-882E
-
Model-based system engineering: SysML, UML
-
Familiar with analog and digital electronic circuits, ADCs, discrete outputs, etc.
-
Experience testing and debugging software and basic electrical circuits with common tools (e.g. multi-meter, oscilloscope)
-
Awareness of automotive systems and common integration points