Embedded Software Specialist/Engineer
- London, ON, Canada
Contract
Applications open in a new tab.
Job details
- Job type
- Contract
- Apply by
- Experience
- Minimum 3 years relevant experience
- Posting language
- English
- Posted
Original job description
Embedded Software Specialist/Engineer P54
(12 month fixed term contract salaried position)
Job 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.
Key Job Elements
- 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).
- Share new IRAD ideas with the Advanced Products & Technology team, and support project execution as requested.
- University Degree or College Diploma in Computer Science, Computer or Electrical Engineering or in a related field
- Minimum 3 years relevant experience
- Demonstrated expertise in C/C++
- Experience with Unified Modeling Language (UML) design and/or model driven development
- Experience with serial protocols for communication and logging
- Testing and debugging skills
- Knowledge of vehicle communication network protocols (SAE J1939, TCP/IP, UDP)
- Ability to participate in concept, UI, and feature development
- Aptitude in hardware selection
- Matlab / Simulink experience
- Architecture, design, implementation, and deployment
- Full SDLC experience
- Two or more of Microsoft Visual Studio, Code Warrior, Eclipse, etc
- Build Automation
- Git and Bitbucket
- Intermediate 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
- P.Eng or the ability to obtain a P.Eng
- Control theory / Mechatronics
- Good experience in Linux
- Real-time systems
- Vehicle systems
- Safety Critical Systems – (i.e. ISO 26262/MISRA)
- Agile, V-Model, Atlassian Suite
Physical Conditions and Hazards:
The conditions in which an individual or staff works, including but not limited to such things as amenities, physical environment, stress and noise levels, degree of safety or danger, temperature, location.
- Physical Environment: Office
- Hazards: NA
This section objectively captures and describes the physical demands that are required to perform a particular job or role. Usually completed by the ergonomist
Usual mobility demands required are standing, walking, sitting, and stair climbing to access upper offices.
Equipment Utilized:
This section describes the type of equipment an employee is required to use:
Computer
Phone
Mobile device
Medical Surveillance
May include: Anthropometrical Size Restrictions depending on task
Personal Protective Equipment:
Applicable when interacting with shop floor (safety shoes, safety glasses, hearing protection. extraction coveralls)
More about this job
Responsibilities
Develop, test, and maintain embedded software for Light Armoured Vehicle products, collaborating with design and systems engineers and assessing hardware impacts on software performance. Follow software development processes, document designs and code, participate in reviews and process improvements, troubleshoot reported issues, and support software activities in office, lab, vehicle, and external test environments.
Requirements
Requires a university degree or college diploma in computer science, computer or electrical engineering, or a related field, at least three years of relevant experience, and demonstrated C/C++ expertise. Candidates should have experience with UML or model-driven development, communication protocols, testing and debugging, vehicle networks, software development lifecycle practices, and relevant development tools; a P.Eng, Linux, real-time systems, and safety-critical systems experience are preferred.
Skills
- C
- C++
- Embedded Software Development
- UML
- Model-Driven Development
- Serial Communication Protocols
- Software Testing and Debugging
- SAE J1939
- TCP/IP
- UDP
- MATLAB/Simulink
- Software Architecture and Design
- Build Automation
- Git
- Linux
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
Keywords
- Embedded Software
- C
- C++
- Light Armoured Vehicle
- UML
- Model-Driven Development
- Serial Protocols
- SAE J1939
- TCP/IP
- UDP
- MATLAB
- Simulink
- Software Architecture
- Agile
- Waterfall
- V-Model
- Build Automation
- Git
- Bitbucket
- Microsoft Visual Studio
- CodeWarrior
- Eclipse
- Linux
- Real-Time Systems
- Mechatronics
- ISO 26262
- MISRA
- System Integration Lab