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 millions of 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 Software Engineer to join Snap Inc! Working from our Los Angeles, CA headquarters, you’ll work on developing real-time computer vision and machine learning technology for visual understanding, and applying this to power future Snap products. You should be highly interested in emerging technologies and trends, and have a passion for applying cutting-edge technology to create innovative and exciting products.

What you’ll do:

  • Develop production-quality real-time computer vision and machine learning technology
  • Build innovative prototypes and products powered by this technology
  • Iterate quickly without compromising quality in a fast-paced environment
  • Perform code reviews to ensure exceptional code quality
  • Collaborate with engineers, designers and product managers and have an opinion on how to shape our products

Minimum qualifications:

  • Advanced degree in computer vision, machine learning, or related field, or equivalent industry experience.
  • Strong modern C++ programming skills
  • Demonstrated experience with applied real-time computer vision

Preferred qualifications:

  • Master’s or PhD in computer vision, machine learning, or related field
  • 2+ years of industry experience working in computer vision, machine learning, or related field
  • Experience with 3D geometric computer vision, e.g. structure-from-motion, SLAM, 3D reconstruction
  • Solid understanding of 3D computer graphics e.g. OpenGL, game engines, shader development
  • Experience with modern deep learning frameworks e.g. TensorFlow, PyTorch, Caffe
  • Experience with low level profiling and optimization of computationally intensive algorithms on mobile devices e.g. using NEON or GPGPU
  • A genuine passion for building products around cutting-edge technology
  • Strong communication and interpersonal skills

At Snap, we believe that having a team of diverse backgrounds and voices working together will enable us to create innovative products that improve the way people live and communicate. Snap is proud to be an equal opportunity employer, and committed to providing employment opportunities regardless of race, religious creed, color, national origin, ancestry, physical disability, mental disability, medical condition, genetic information, marital status, sex, gender, gender identity, gender expression, pregnancy, childbirth and breastfeeding, age, sexual orientation, military or veteran status, or any other protected classification, in accordance with applicable federal, state, and local laws. If you have a disability or special need that requires accommodation, please don’t be shy and contact us at