Computer Vision Software Engineer

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


Role Number:200193196
iPhone is the most popular camera in the world, with billions of photos taken every year! The detailed integration of software and hardware has led to features like Smart HDR, Portrait Mode, Night Mode, and Deep Fusion, which deliver magical experiences that surprise and delight our customers. The Camera Technologies & Systems team in Camera & Photos team delivers amazing quality photos and videos by combining state of the art computer vision, image processing, and machine learning. As an engineer on our team you'll develop and extend those software pipelines, working side-by-side with the special engineers who made iPhone’s camera what it is today, and build new extraordinary camera capabilities spanning the universe of Apple devices. Whenever you see a “Shot on iPhone” billboard, you see our work; it could be your work too! Are you ready?

Key Qualifications

  • 3+ years of software development and camera system experience.
  • Excellent coding skills in C or C++.
  • Strong technical background in image and video processing and computational photography.
  • Knowledge and experience using Computer Vision to tackle real-world problems.
  • Previous experience in digital imaging and camera development.
  • Proven track record to take initiative and solve problems without explicit direction.
  • Strong verbal and written communication skills.


The Camera Technologies team is looking for an enthusiastic and hardworking software engineer with a technical background in camera imaging. In this role you will be responsible for prototyping, developing, and integrating cutting-edge camera and imaging technologies into our cameras. Our team works with complex systems and many diverse teams to develop cutting-edge software which continually enhances our camera and photos solutions.

Education & Experience

MS or PhD in Computer Science or Electrical Engineering or equivalent.

Additional Requirements

  • One or more of the following would be a plus:
  • Familiarity with common development and debugging tools for embedded/mobile applications.
  • Familiarity with camera systems and ISP processing pipeline.
  • Motion sensor processing and fusion experience
  • Familiarity with multiple-camera systems and 3D geometry.
  • Familiarity with machine learning and deep learning.