Apple is looking to improve the user's photo and video experiences by building innovative on-device and cloud services. The Photos Infrastructure team is seeking a software engineer to develop applications and infrastructure for Apple platforms, focusing on features like video & image processing, database programming, performance profiling, concurrent multi-process architectures, privacy & security initiatives, and managing network based assets.
Requirements
- Demonstrable experience with at least one of: C/C++ programming, Assembly language, Operating systems development, Compiler work, Inter-process communication (IPC), or Media transformations
- Experience developing and testing embedded systems with an understanding of resource constrained environments
- Experience building APIs or software frameworks
- Database design and query optimization with any relational database experience (SQLite, PostgreSQL, SQL, Core Data)
- Experience with performance tuning in any area (Memory, I/O, scheduling, network protocols)
- Experience with digital media processing, including image/video manipulation, format conversion, or media pipeline development
Responsibilities
- Develop APIs and frameworks (particularly PhotoKit) that enable third-party developers to integrate with Apple's photo ecosystem
- Conduct performance profiling and tuning for memory usage, scheduling, I/O operations, and networking protocols
- Optimize database queries and media processing algorithms to ensure smooth user experiences at scale
- Support the development of innovative features that leverage the tight hardware-software integration of Apple devices
Other
- Bachelor's Degree in Computer Science or equivalent degree with at least 3 years of relevant experience
- Strong foundation in computer science fundamentals