Vision Framework Software Engineer
Santa Clara Valley (Cupertino), California, United States
Software and Services
The Computer Vision and Machine Learning (CV/ML) department in the Intelligent System Experience group at Apple is responsible for computer vision and machine learning for Apple's image and video products, and for third party developers. The group works on research and development in a fast-paced environment. This includes developing the Vision.framework for macOS, iOS and tvOS. The Vision.framework is Apple’s API for enabling high-level, complete Vision algorithms used both internally and by third-party developers, including algorithms from cross-functional groups throughout the company. We are looking for an experienced software engineer. The position involves implementing frameworks based on advanced computer vision technology and integrating these into products that improve the daily experience for millions of users.
- 5+ years of industry experience, 10+ years preferred
- Strong C, C++ experience and Objective-C — also great is knowledge of Python and Swift
- Strong skills in general software engineering, preferably across multiple platforms and languages and for a variety of different solutions.
- Proven ability to design and implement using modern architectural concepts and processes
- Knowledge of concurrency and its use in application and/or framework development
- Experience architecting reusable software components from the API down to low-level internal framework code
- Passion for quality and fully versed in creating unit tests and working with continuous integration infrastructure.
- Track record of shipping products
- Experience with macOS and/or iOS development and familiarity with UNIX-based systems is a major plus
In this role you will help take breakthrough computer vision and machine learning algorithms out of the labs, and put them into products used by millions of people every day. You will be working with various cross-functional groups to integrate computer vision technologies into the Vision.framework, architecting the best approach to expose the technology through Vision.framework APIs, and ensuring performance and accuracy. The candidate is required to have a significant track record and strong skills in general software engineering. We’re looking for a versatile engineer who enjoys applying their skills to a wide variety of tasks. Strong analytical and problem solving skills are paramount, as is a clear passion for writing quality code. The candidate must have excellent written and verbal communications and the ability to work hands-on in cross functional teams. You’ll be joining a fast-paced team of technical leaders, so excellent collaboration skills are a must, as is the ability to demonstrate past technical leadership success. Resumes containing broad and diverse experience reflect an ability to perform in a variety of work environments using myriad technologies, and will be strongly considered.
Education & Experience
BS or MS desired, however a strong track record of professional senior technical contributions is critical.