Do you want to work on state of the art embedded vehicle and IoT solutions? Join our client and be part of the adventure as an Interface Software Developer. You will design and develop telematics systems used to evaluate the driving behavior, control the vehicle and more. The solutions are composed of embedded systems in vehicles, applications for smartphones and cloud backend systems. Your embedded side developer background will help you developing the next generation technologies that interface to the vehicles electronics systems. In an Agile environment, the software group is in constant mutation improving methodologies and working environment. You will report to the Team Lead - Interface Software development. Your mission:
Vehicle Interface - 40%
Analyze and understand how the vehicles and their interfaces (I/O, CAN, LIN, Bluetooth, RF, J1850vpw/PWM, KWP2000, ISO9141, J1979, ODB II) function.
Analyze and understand the operation to start a vehicle.
Analyze and understand the basic functionalities of the vehicle, such as door lock and unlock, arm and disarm, opening the trunk, detecting the breaks, etc.
Potentially participate in the creation of tools (i.e using Vehicle Spy) to help analyze the vehicle interface.
Document your works.
Design and implementation of Software Solutions- 30%
Develop algorithms to control the vehicle via the interfaces that you have analyzed.
Implement algorithms to demonstrate their functionality on the bench and in car.
Participate in developing the software application for the vehicle.
Documenting the solution as required.
Maintenance and debugging- 30 %
Maintain software products after they are released (bug fixes and functionality additions)
Collaborate with the Validation Team to resolve issues.
Collaborate with the Technical Services team to resolve problems in the field.
You are the person we are looking for if you have:
DEC in Electronics Engineering Technology, or Bachelor’s degree in Computer Science, Engineering or related field.
Three (3) years of programming experience in C and C++ for embedded systems.
Experience with the architecture of the ARM Cortex, 8051 Microcontroller.
Pertinent experience developing communication protocols.
Experience resolving complex electronic and software problems.
Experience with CAN, LIN, J1850 and OBDII.
Experience with different instruments such as oscilloscope and multimeter.
Knowledge of the software development cycle.
Ability to communicate ideas convincingly.
Demonstrate team spirit.
Ability to work under pressure.
Driven by results.
Autonomous, meticulous and believes in integrity.
Do you also have ?
Knowledge of at least one of the following protocols: Bluetooth BLE or ZigBee.
Experience with object-oriented programming is an asset.
Experience debugging real-time and multitasking environments.
Directed offers you:
A modern work environment
Gym and game room
A flexible schedule
Great health benefits plan and RRSP with employer contribution
An Agile environment
Our values are simple and straightforward, but fundamental to the way we do business: