As an senior software engineer, you will be responsible to develop, implement, and test software for high impact projects that are aligned to Self driving vehicle technology.
Your Missions
- Own and develop high quality embedded software solutions as part of a larger team; leading and participating in future development
- Collaborate with Systems Engineers in architecting requirements
- Conduct design and code reviews for C++14 and/or Python projects
- Lead and participate in embedded SW implementation, applying strong SW development principles
- Conduct software verification (unit testing, simulation, test automation, on hardware and in-vehicle as needed)
- Provide clear and complete documentation per the software development process
- Collaborate with team members through Scrum/Agile. Utilize agile software development methodologies including continuous integration and continuous deployment.
- Take ownership of each project, make design and implementation decisions autonomously, and mentor junior members
Let's talk about you!
- 8+ years designing and developing production software in C++, including C++14
- 3+ years of automotive embedded software development or similar
- Development experience in another language (e.g. Python, C#)
- Experience developing unit tests based on GTest and GMock
- Experience in object-oriented software development, algorithms, and data structures, design patterns
- Experience working with large code bases, developing entirely new code and maintaining existing code, within a CI/CD environment
- Experience with agile software development
- Experience providing technical guidance to team members
- Ability to investigate issues based on limited information. Demonstrated high level of analytical ability to resolve complex problems.
- Creative, disciplined, strong sense of responsibility
- Strong leadership and interpersonal communication skills, proven ability to collaborate effectively with team members locally and remotely
- Minimum Education Required: Bachelor’s Degree in Computer Science, Mechatronics, Software, Electrical or Computer Engineering. Advanced degrees preferred.
Preferred Skills and Experience
- Understanding of major automotive vehicle systems such as Advanced Driver-Assistance (ADAS)
- Exposure to Automotive Platforms (Ethernet/CAN/LIN, AUTOSAR, QNX)
- Knowledge of vehicle architectures, serial and ethernet data communication, and hardware/software interfaces
- Experience with Machine/Deep Learning algorithms
- Experience with Data Visualization and Business Intelligence tools (e.g. HUE, Jupyter, PowerBI)
- Experience with big data databases (e.g. Hadoop/SQL/NoSQL)
- Exposure to sensors or embedded devices – e.g. cameras, radars, LiDARs
- Exposure to GPU computing
- Experience with SAFe methodologies
- Experience with OBDII, ISO26262 functional safety control systems
Full Time Permanent Toronto