Codec Engineer

Santa Clara Valley (Cupertino), California, United States


Posted: Dec 11, 2018
Role Number: 200003098
Imagine the impact you can make. A billion users will use the technologies you helped craft almost daily. At Apple, you will have the opportunity to work on products that are always the leaders in the industry and occasionally, change the world! The Video Engineering group at Apple is responsible for crafting the image/video core technologies used in almost all Apple products and services. We are looking for an individual contributor to develop video codec firmware/driver/algorithm for future products as well as current products. You will have a validated background in image/video processing and compression, and be an extraordinary teammate.

Key Qualifications

  • Video codec (H264/AVC, MPEG4, MPEG2, SVC etc...) is a plus
  • Solid programming skills and C/C++ coding abilities
  • Firmware, algorithm or device driver development
  • Graphics hardware bring-up and troubleshooting
  • Multithreading and performance optimization
  • Video compression standards
  • Digital Signal Processing
  • Assembly programming and code optimization
  • Development experience on Mac OS X, iOS or other embedded system, is a plus


Your key responsibility will be to design, develop and implement firmware, device drivers and frameworks, to accelerate video codecs and video processing on graphics hardware. The core responsibilities are as follows: - Bring-up device drivers for new graphics architectures in simulation environment - Analyze workloads and identify performance problems to optimize software - Implement test cases for current and new video workflows - Collaborate with QA and GPU vendors to investigate test failures and design experiments to resolve the root causes - Profile applications and optimize software to improve power efficiency - Collaborate with Apple’s graphics driver teams to solve problems related to graphics software

Education & Experience

BS/MS in Computer Science or Electrical Engineering

Additional Requirements