Software Engineering - Platform Architecture

Santa Clara Valley (Cupertino), California, United States
Hardware

Summary

Posted:
Role Number:200238623
Imagine what you could do here! At Apple, new ideas have a way of becoming extraordinary products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. Dynamic, smart people and inspiring, innovative technologies are the norm here. The people who work here have reinvented entire industries with all Apple Hardware products. The same passion for innovation that goes into our products also applies to our practices strengthening our commitment to leave the world better than we found it. Join us to help deliver the next groundbreaking Apple product. Do you love working on challenges that no one has solved yet? Apple is seeking a highly motivated, energetic software engineer to design and implement the next generation tool-chain for the programming of special purpose SoC processors.

Key Qualifications

  • The ideal candidate will have 10-15 years of software engineering experience with focus on tool creation, including:
  • Experience with compiler and modern IDE customization
  • Demonstrated expertise in code generation
  • Understanding of software for signal processing, firmware, OS and applications
  • Strong documentation skills
  • Strong communication skills (cross-functional, executive etc.,)
  • Strong C++ programming experience
  • Audio processing experience a plus

Description

As a member of a special purpose processor team, the ideal candidate will be responsible for the future tool-chain used by algorithm designers to program and debug application specific signal processors programs. Responsibilities include: - The generation of a highly parameterized and optimized code generation back-end capable of targeting a growing number of special purpose processors. - Design and implementation of real time debugging tools for live signal processing inside the IDE. - Strongly contribute to the instruction set, data and control structures of new processors so that they are compatible with achievable code generation and debugging methods. - Learn the power consumption consequences of different code generation methods and adopt appropriate solutions.

Education & Experience

EE/CS Masters or PHD

Additional Requirements