Software Engineer, C++/Embedded
Snap Inc is a technology company. We believe the camera presents the greatest opportunity to improve the way people live and communicate. Snap contributes to human progress by empowering people to express themselves, live in the moment, learn about the world, and have fun together. The Company’s three core products are Snapchat, a visual messaging app that enhances your relationships with friends, family, and the world; Lens Studio, an augmented reality platform that powers AR across Snapchat and other services; and it's AR glasses, Spectacles.
SnapLab is home to the Spectacles brand and a world-class research & development team, working together to pave the way for the future of the camera — and innovating how creative computing will be overlaid on the world around us.
The Snap Labs Computer Vision Team works to solve some of the most important challenges on Computer Vision and Augmented Reality. We’re looking for C++ Software Engineers to join the SnapLab Computer Vision Team at Snap Inc. We work on wearables and look to push the boundaries of what is possible.
As a C++ SWE, you will be working in a small team writing efficient code for our most exciting products. You’ll work on solving some of our industry’s toughest challenges and develop the next generation of wearable devices.
Working from our Vienna office, you’ll develop groundbreaking technology at Snap together with colleagues from our locations in Santa Monica (HQ) and Europe.
What You Will Do
Integrate cutting-edge Computer Vision systems with robust real-time performance
Work closely with embedded systems and computer vision teams to enable complex software to run efficiently on wearable hardware
Design and implement tools for analyzing performance and quality of our algorithms
Knowledge, Skills, & Abilities
Strong knowledge in C++
Strong understanding of computer science fundamentals
Deep understanding of computer system architecture
BSc in Computer Science, or equivalent field
3+ years of experience in native software development (C++)
Experience in developing for resource constrained systems (mobile or embedded)
Experience with development for ARM processors
Experience with continuous integration, code quality management (static code analysis, address sanitizer, etc.) and code versioning (git)
Experience with performance profiling (memory, cache, CPU)
Experience with ML hardware acceleration and common ML frameworks
Experience with RTOS
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. EOE, including disability/vets.
If you have a disability or special need that requires accommodation, please don’t be shy and contact us at email@example.com.