The phone interview consisted of questions about my past work experience.
Then I was called for an on-site interview. The interview lasted five hours, with thirty-minute interviews with ten people, including one with HR. Most of the questions were about my past experience as well.
It included a lot of drawing on the whiteboard to explain the architecture of software I had worked on. There were some programming questions, which were quite simple, such as:
I also had questions on OS, like memory management, interrupt handling, and preemption.
I thought I did well, but I did not receive an offer.
Write code for writing to a circular buffer.
Write code for generating a factorial/Fibonacci for a given number using both recursive and non-recursive methods. Advantages and disadvantages of each method.
The following metrics were computed from 162 interview experiences for the Apple Software Engineer role in Cupertino, California.
Apple's interview process for their Software Engineer roles in Cupertino, California is very selective, failing most engineers who go through it.
Candidates reported having very good feelings for Apple's Software Engineer interview process in Cupertino, California.