Snap Inc.

Software Engineer, Graphics

Snap Inc.

Toronto, Canada

full time

20 Aug 2020

Snap Inc.

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.

Bitmoji is the digital you — a living cartoon character to instantly express who you are and how you're feeling, in the moment. We believe that the magic of cartoons can improve everyone’s online lives, and empower people to communicate in ways that words alone can’t capture.

We’re looking for a Software Engineer, Graphics to join Team Bitmoji. Working from our Toronto office, you will be tasked with solving interesting technical challenges such as building a proprietary graphics platform to render and deliver Bitmojis, designing expressive creative tools, and maintaining software used by millions every day.

What you'll do:

  • Design, develop, and maintain a cross-platform, high-performance graphics rendering engine to make Bitmojis more engaging
  • Create tools for artists to continue to deliver new avatar features that are performant and expressive
  • Evaluate the technical tradeoffs of every decision
  • Perform code reviews and ensure exceptional code quality
  • Build robust, lasting, and scalable products
  • Iterate quickly without compromising quality

Minimum qualifications:

  • 4+ years of software engineering experience
  • Bachelor’s degree in a technical field such as computer science or equivalent experience
  • Strong understanding of modern graphics techniques and tradeoffs
  • 2+ years of experience building high-performance graphics systems
  • 2+ years of experience with systems programming languages like C/C++

Preferred qualifications:

  • Experience profiling and optimizing both performance and memory usage of complex systems
  • Experience with 3D graphics APIs like OpenGL, Metal or Vulkan
  • Experience with mobile apps and/or databases
  • Experience working with distributed systems
  • M.S. degree in computer science or a related field
  • Ability to proactively learn new concepts and apply them at work

Do you want to get jobs like this one sent to your email every week?

Then subscribe to the C++ JOBS newsletter!