Our team develops and maintains a C++ framework for Computer Vision and Augmented Reality applications. The framework supports all major platforms, for example backend-end, desktop, mobile, and VR devices. The framework is used in several hundred projects, for example the Family of Apps (WhatsApp, Facebook).
The day-to-day work will require C++ almost exclusively. Because of that we’re looking for engineers with great knowledge of C++ who have successfully used C++ to complete projects recently and who are comfortable to work independently on complex code bases.
As a member of our team, your work will focus on the maintenance of the framework to ensure smooth business operations across all supported products and services. Your work will include a wide variety of different tasks, for example:
* increase the test coverage, improve existing tests and fuzzers
* performance evaluations on different platforms
* customer support: handling and resolving bug reports, helping with the integration of our framework in the codebase of the customer
* algorithmic improvements
* code maintenance like refactoring of functionality and updating of interfaces
Summary:
The main function of a software engineer is to apply the principles of computer science and mathematical analysis to the design, development, testing, and evaluation of the software and systems that make computers work. A typical software engineer researches, designs, develops and tests operating systems-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific and general computing applications.
Job Responsibilities:
- Develop and maintain novel, accurate CV algorithms and advanced systems for large scale applications.
- Monitor signals, identify and apply solutions to problems.
- Define use cases and develop methodology and benchmarks to evaluate different approaches for new algorithms.
- Collaborate on projects with other engineers to achieve impact based on your contributions.
Preferred Skills:
- 3+ years of industry experience working on projects such as: real-time SLAM and 3D reconstruction, sensor fusion and active depth sensing, object and body tracking and pose estimation, and/or image processing. Image and/or semantic segmentation, 2D and 3D key point estimation and surface reconstruction, depth estimation, or photorealistic rendering.
- Developing and designing Computer Vision and/or Machine Learning technologies and systems for running on edge devices (mobile phones, and/or custom hardware)
Qualifications:
- BSc degree in Computer Science with focus in Computer Vision or related technical field.
-1+ years of experience developing and designing geometric Computer Vision and/or Machine Learning technologies and systems.
-2+ years of experience engineering in C++.
- Prototyping and engineering experience in at least ONE relevant specialization area in either Computer Vision or Machine Learning: SLAM, state estimation, sensor fusion, pose estimation, body/facial/hand/eye tracking, dense 3D reconstruction, object detection, segmentation and tracking scene understanding/semantic segmentation, photorealistic rendering, hardware, camera or online calibration.
Education/Experience:
• Bachelor, MSc or PhD degree in Computer Science, Computer Vision, Machine Learning, Robotics or related technical field or relevant field required.