I applied through a recruiter. The process took 3 days. I interviewed at Apple in Jun 2010
Interview
The recruiter contacted me regarding a role I should have, at least at the surface level, been very qualified for, given previous professional experience for a competitor. After a few e-mail exchanges and a phone screening with the recruiter, a call was set up with the hiring manager. If it was the recruiter's intention to get me hired, it would have been wise to provide better details regarding the type of person/expertise the team was looking for. Advertising a search for a particular skill set but really wanting a different set led to an unfortunately unrewarding phone interview with the hiring manager, from my side, and a waste of time for the hiring manager. Whether the fault lies with a lack of communication between the recruiter and the hiring manager or the recruiter and the prospective candidate (me), the pivotal role here is the recruiter.
Around 2 months after I submitted my resume for Apple software engineer position, I got a call from the hiring manager. He asked me what was the good day for the interview. It took half day for meeting 5 people. It was long hour interview for me. Each interviewer spent ~ 30 minutes and asked ~ 4 questions. Each interviewer asked questions in the different areas.
6 rounds. 1 Technical Screening. Then onsite loop consisted of 4 rounds of behavioral, 2 technicals, and 1 sys design. Had an additional Hiring Manager round since I was borderline.
Interview questions [1]
Question 1
LC Mediums and mentorship based behavioral questions.
6 rounds. Started with phone screen with HM about past projects.
Onsite rounds
1: OOD
2. Multi threading
3. Java design pattern and Immutable classes
4. HM
All the rounds were heavily focused on Java