Software Engineer, C++

Snap   •  

Los Angeles, CA

Industry: Technology

  •  

Less than 5 years

Posted 40 days ago

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 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 an experienced C++ developer to join Snap Inc! As a member of our Augmented Reality’s Core Team, you will help build SDKs and infrastructure which power creative experiences in Snapchat’s camera. The job is at the intersection of graphics, computer vision, and software architecture. We’re looking for someone with a passion for learning, ability to hit the ground running, and track record of shaping open ended requirements into deliverable software products. Working from our Los Angeles, CA headquarters, you will be responsible for writing software which will be used by millions of people around the world.

What you'll do:

  • Design, architect and implement well-tested C++ software which powers experiences in Snapchat’s camera
  • Implement production-ready computer vision and graphics applications for mobile devices
  • Participate in design and code reviews
  • Interact with design, interactive engineering, and product teams to shape product goals into software requirements

Minimum Qualifications:

  • Master’s in computer science or related technical field
  • 2+ years of professional C++ software development experience (or demonstrable ability to pick up new languages and paradigms)
  • Experience dealing with concurrent systems and architectures

Preferred Qualifications:

  • Working knowledge of graphics and computer vision
  • Strong computer science and software engineering fundamentals
  • Desire to learn new disciplines and ability to hit the ground running
  • Familiarity with machine learning and deep learning
  • Proficiency in Python and Java (and JVM ecosystem) in addition to C++
  • Some knowledge of, and experience with large scale backend services