Software Engineer- Linux Driver and Kernel Developer

Cupertino, California, United States


Role Number:200550485
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 dedication to leave the world better than we found it. Join us to help deliver the next groundbreaking Apple product. Are you passionate about changing the world? We have a critical impact on getting high quality functional products to millions of customers quickly, and we are hiring all levels from junior to senior roles. As part of the silicon validation team, you will develop Linux device drivers and user-land tests for exercising and testing the various subsystems in sophisticated SoCs.


- You will work closely with designers and architects to understand functional IP blocks and their use-cases - You will focus on implementing BSP and doing software bringup on pre and post-silicon platforms - You will be responsible for developing Linux device drivers and user-land tests for exercising and testing the various subsystems in sophisticated SoCs. - You will debug and root-cause a variety of hardware and software issues

Minimum Qualifications

Key Qualifications

  • We would prefer that you have the following skills, or willingness to learn the following skills:
  • Experienced in embedded Linux kernel development
  • Proven knowledge of Linux kernel internals (process scheduler, memory management, concurrency/synchronization, memory allocation, file systems) and profiling
  • Extensive device driver development and support (one or more of USB, graphics, video, storage, and power management)
  • Strong debugging skills in kernel context.
  • Experience with exercising/validation of system from user space, and knowledge of user space API
  • Experience porting/maintaining Linux distribution for a platform
  • You are a skilled C programmer.
  • Familiarity with ARM architecture is desired

Preferred Qualifications

Education & Experience

A minimum of a bachelor's degree. (EE/CE/CS preferred.)

Additional Requirements

Pay & Benefits

  • Apple is an equal opportunity employer that is committed to inclusion and diversity. We take affirmative action to ensure equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics. Learn more about your EEO rights as an applicant.