Snap Inc. is a camera company. We believe that reinventing the camera represents our greatest opportunity to improve the way people live and communicate. Our products empower people to express themselves, live in the moment, learn about the world, and have fun together.
Snapchat is the camera used by over 150 million people every day to Snap with family, watch Stories from friends, see events from around the world, and explore expertly curated content from top publishers. In short, we are a passionate team working hard to build the best platform in the world for communication and storytelling.
We’re looking for a Computer Vision Research Engineer to join Team Snapchat! Working from our Venice, CA headquarters, you’ll work on creating new ways to employ computer vision and graphics to give Snapchatters exciting tools that they can use to amuse and delight their friends.
What you’ll do:
Develop impactful and innovative computer vision technologies
Write production code used by millions of Snapchatters
Introduce major innovations that can lead to product features or new areas of business
Work closely with other teams to explore and prototype new product features
Evaluate the technical trade-offs of every decision
Scope projects that require multiple developer resources
What we’re looking for:
An understanding of 3D multiview geometry, bundle adjustment, and SLAM/visual odometry
Outstanding C++ programming skills
Master's degree or PhD with a focus on computer vision or machine learning
An understanding of sensor fusion, utilizing camera data and sensor data such as inertial or depth
Experience with image feature extraction, tracking, and matching
An understanding of 3D reconstruction from camera images and depth sensors
Experience classifying objects, matching templates, or using other machine learning methods for computer vision
Strong algorithmic and code-level optimization skills
Experience implementing, verifying, and optimizing at least two of the following:
Real-time monocular and/or multi-camera computer vision systems
Augmented reality systems
Embedded, robotic, or mobile platforms
Robust, fault-tolerant code that is efficient and maintainable