
SW Optimization Engineer AI/ML
Required skills
- AI/ML HW accelerators
- GPUs
- image/video encoders
- AI/ML
- graphics
- HPC
- performance benchmarks
- workloads
- Apple Silicon
- performance bottlenecks
Nice to have
- software performance optimization
- performance analysis tools
- performance optimization process
- computational algorithms
- computer architecture
- C/C++
Role summary
Apple's Platform Architecture group seeks an SW Optimization Engineer specializing in AI/ML. This role involves analyzing hardware and software performance bottlenecks, developing novel algorithms, and optimizing solutions for Apple Silicon. You will collaborate with cross-functional teams to enhance system performance, provide feedback to silicon and software development, and prototype/benchmark algorithms on various platforms. Experience with AI/ML workloads, performance analysis tools, and programming languages like C/C++ and Python is essential.
Description
In this role, you will analyze existing and new workloads to identify performance bottlenecks in the hardware and/or software. Working with your colleagues, you'll address performance limitations and provide recommendations for Apple hardware and software improvements. In addition to working directly with developers, you will identify patterns of performance challenges on Apple silicon, emerging new usage models, and provide feedback to the silicon and software teams for potential improvements.
Minimum Qualifications
Bachelor’s degree or equivalent job-related experience in Computer Engineering, Computer Science, or a related field. Experience in software development for at least one of the following hardware IPs: AI/ML HW accelerators, GPUs processing units, image/video encoders, or similar. Experience with AI/ML, graphics, or HPC performance benchmarks and workloads.
Preferred Qualifications
M.S. or Ph.D. in Computer Science, Computer Engineering, Electrical Engineering, or a closely related field. 10+ years of relevant experience in software performance optimization, performance analysis tools, performance optimization process and development of efficient computational algorithms. Knowledge of computer architecture fundamentals. Proficiency in some of the C/C++ family programming languages, and scripting languages such as Python. Ability to prototype and benchmark algorithms on CPU, GPU, and Neural Engine platforms, analyze performance metrics, and create high-level complexity models, or develop targeted highly efficient low-level performance libraries for AI/ML accelerators or GPUs. Proficiency in popular AI/ML frameworks, such as PyTorch, and relevant software stacks. Knowledge of operating system internals and compiler technologies. Technical aptitude and curiosity, as well as ability to collaborate effectively with team members, partners, and stakeholders.
Sample Apple interview questions
- 1
Design a typeahead box for a search engine
system designmedium - 2
Design a rate limiter
system designmedium - 3
Architect a key-value store for distributed systems.
system designmedium - 4
Design a system to schedule jobs in a distributed environment
system designmedium - 5
What is an API and how does it work?
technicalmedium
Get started to unlock a personalized interview prep pack for this role.
Similar roles
AI ML Engineering Lead - Vice President - AI for PaymentsJPMorganChase · Jersey, NJ · Onsite
Delivery Consultant – AI ML, Professional Services, AWSI HCLSAmazon · New York, NY · Hybrid
Senior Associate – AI ML EngineerRiveron · Pune, IN · Hybrid
EY-Parthenon - Strategy and Execution - Growth Platforms - AI ML Engineering - DirectorEY · San Francisco, CA · Hybrid- AI ML EngineerDocusketch · Remote · Remote
Applied AI ML Director - AI Agents and Agentic SystemsJPMorganChase · New York, NY · Onsite
