Senior Software Engineer, Video Composition

Santa Clara Valley (Cupertino), California, United States
Software and Services


Posted: Jul 4, 2019
Role Number: 200073947
Imagine what you could do here. At Apple, new ideas have a way of becoming great products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. The Video Applications group develops leading media creation apps including Memories, Final Cut Pro X, Compressor, iMovie, Motion, and Clips. We are seeking an experienced and talented software engineer to join our team to help design & develop exciting new features for these applications.

Key Qualifications

  • 5+ years of software development experience.
  • Strong media engineering experience for manipulating Photos, Videos, and Music utilizing AVComposition.
  • Knowledge of traditional video techniques such as “Ken Burns” and video composition rules for cropping / framing of media for video.
  • Strong experience in AVFoundation, including AVComposition, AVVideoComposition, VideoLayerInstructions, CoreAnimation, CustomCompositors, and AVAudioMix.


This is an extraordinary opportunity to apply your interest and expertise in building consumer iOS products that reach tens of millions of users. We're seeking a seasoned engineer experienced in video editing and video composition technologies, media engineering utilizing AVComposition, and a proven track record for design utilizing traditional video techniques. In this role you will leverage your development expertise to implement user interfaces to support multiple targets, layouts, and screen sizes. Ideal candidate will have strong media engineering experience for manipulating Photos, Videos, and Music utilizing AVComposition.

Education & Experience

Bachelor of Sciences or Masters degree in Computer Science or related field.

Additional Requirements

  • - Applying technical expertise, including engineering and operational excellence to challenging programming and design problems.
  • - Ability to identify areas for improvement and take initiative to work towards a solution.
  • - Able to tackle problems independently as well as know when to engage team members to drive innovation.
  • - Performing code reviews and redesign existing applications for better user experience involving performance and usability.