Software Engineer — Face ID

AppleSunnyvale, CaliforniaOn-siteFull-timeMid level, 2–5 yearsListed 48 minutes ago

Apply now

About this role

The Face ID team is an engineering and applied research team responsible for developing real-time, on-device Computer Vision and Machine Perception technologies that power secure authentication across Apple products. We focus on a balance of research and engineering to deliver Apple quality, state-of-the-art experiences. As a member of the Face ID team you will build and ship the software that brings these technologies to life on Apple's next generation hardware and silicon. We are looking for a software engineer to help us take our platform, frameworks, and shipping experiences to the next level.

We are looking for a proactive software engineer to help design, build, and ship the software stack behind Face ID. The ideal candidate has a strong passion for delivering high-quality products and solving challenging real-world technical problems. Responsibilities range across architecture and API design, implementation, integration across the OS stack, optimization, automated testing, and benchmarking — with a particular emphasis on performance, power, reliability, and security. You will work with CVML researchers to bring new capabilities from prototype to production, partner with hardware and silicon teams on sensor bring-up, and collaborate with framework, accessibility, and QA teams to make sure the experience works well for everyone who uses it. In this position you will work closely with similar minds in a unique development team building software that runs billions of times a day.

Minimum Qualifications

BS and a minimum of 10 years relevant industry experience
Track record of designing and shipping robust software in a collaborative environment.
Strong software engineering fundamentals: API and framework design, data structures, concurrency, memory management, and debugging complex systems
Experience writing production software for resource-constrained or embedded platforms, with an emphasis on performance, memory, latency, and power
Experience integrating computer vision or machine learning components into shipping products (you don't need to invent the models, but you should be comfortable working alongside those who do)
Experience with profiling, instrumentation, automated testing, and continuous integration

Preferred Qualifications

MS or PhD in Computer Science, Computer Engineering, or a related field

Expert C/C++ skills, with working knowledge of Python; Objective-C or Swift experience
Familiarity with camera, depth, or other sensor pipelines; experience with 3D or time-of-flight imaging
Comfort working close to hardware and collaborating with silicon, firmware, and hardware teams
Interest in security and privacy-preserving system design
Passion for shipping high-quality products, including accessible experiences that work for a wide range of users
Self-motivated, with excellent problem-solving and communication skills, and a collaborative approach to code review and design discussion