This job posting has expired
Senior C++ Developer
Location : Montréal, QC
Headquarters : 1751 Rue Richardson #4.400, Montréal, QC H3K 1G6, Canada
Hiring Mode : Full Time
Hiring Role : Developer
Experience : Senior Level
- Algolux is an industry-leading software provider with technology at the intersection of AI, computer vision, and computational imaging. Our award-winning products address mission-critical applications for the Advanced Driver Assistance Systems (ADAS), Autonomous Vehicle (AV), Smart City, and video security markets.
- As a Senior C++ Developer, you will contribute to the integration of Deep Learning based Computer Vision technologies on a variety of software and hardware platforms. The ideal candidate is a Software Engineer with a proven ability to write production-quality code and who is comfortable collaborating with the R&D team.
- Integrate or port computer vision and image processing algorithms to various platforms.
- Participate in the design of Computer Vision software infrastructure that:
- Supports a variety of computing platforms and AI accelerators (such as PCs, embedded devices, CPUs, GPUs and VPUs)
- Leverages the power of existing Neural Network inferencing frameworks like TensorRT, OpenVINO, TensorFlow, etc.
- Provide constructive feedback and guidance to junior team members.
- Knowledge in at least one of these fields is desirable: ComputerVision, Image processing, Deep learning, etc.
- Experienced and comfortable dealing with technical / project uncertainty.
- Pragmatic approach with a make it work attitude.
- Excellent C++ programming skills:
- Mastery of modern C++ standards (C++11 or more recent).
- Hands-on experience with object-oriented software design patterns, and their implementation in C++.
- Comfortable using language features like STL, smart pointers, move semantics, templates, etc.
- Experience with debugging and using tools such as gdb, lldb, valgrind, etc.
- Experienced with cross-platform build systems, like CMake.
- 3+ years of experience developing under a linux environment
- Experience working in a collaborative work environment:
- Familiarity with agile development practices such as Scrum.
- Comfortable using collaborative development tools such as GitLab and Jira.
- Ability to adhere to company coding standards.
- Willingness to participate in code review processes.
- Bachelor or Master degree in Computer Science, Software Engineering (or in similar fields), and at least 5 years of industry work experience as a Software Developer.
- Proven dedication for writing production-quality code that is robust, efficient, portable, maintainable, and bug-free.
- Deep Learning frameworks such as TensorFlow, PyTorch or Caffe.
- Automotive or Embedded Platforms, such as NVIDIA Drive/Jetson AGX.
- Good knowledge of Deep Learning and Computer Vision algorithms.