Taro Logo

Senior Software Engineer Interview Experience - Sunnyvale, California

April 1, 2018
Positive ExperienceGot Offer

Process

An Apple recruiter reached out to me and asked for my resume. After about a month, I got an email from one of the recruiters asking for a technical phone interview time slot. I was then scheduled for a 45-minute phone interview.

The interviewer focused on Java and asked me several questions about core APIs and internals of Java. This also included writing some code on a shared online tool. The interview ended before 30 minutes, and I was in a confused state of mind as to why that happened.

The next week, I received an email from the recruiter saying that I did well and they would like to invite me for a day of onsite interviews.

After reading some of the interview experiences here, I thought of giving it my best shot and hence asked the recruiter for two weeks of preparation time.

I focused on problem-solving every day from LeetCode. I used to ensure that I would solve at least 5 of them every day: 3 easy and 2 medium, with some days taking a dig at the hard ones too. I also revised all the Java fundamentals, threading, concurrency, collections, and popular interview questions. Since I was interviewing for an experienced position, I was expecting the interview to not just be focused on algorithms and data structures.

The interview process is stressful and fairly long: 10 AM - 5:00 PM ish, almost one complete workday! You will probably lose the count of the number of people you have met throughout the day in the end, as there are 8-9 rounds of 45 minutes each with different members of the team from all levels, ranging from engineers, senior engineers, leads, to engineering managers to directors.

You should expect that 90% of the interviews will be very technical in nature. You will be asked to explain your projects in clear terms, and they will ask you questions about your design and architectural decisions and how you could have improved them. They will also ask you to justify key terms and projects on your resume.

REST API design philosophy, best practices, versioning, and designing a set of APIs from given use cases.

Ensure that you are comfortable and play well on a whiteboard. A lot of it is involved. You will be asked to draw various project designs/architectures and solve algorithmic/DS questions (they are easy/medium level from LeetCode, HackerRank, etc.). You should know your data structures well and should be able to apply them effectively to solve the problem at hand. Also, understand the time and space complexity of your solution and how to improve on them. There will be at least one or two system design interviews where you might be asked to design a popular social media app/website like Instagram or Facebook.

Try to build up enough knowledge about Collections, Spring framework, Garbage collection, etc.

If you are a JAVA / OOP person, you will be asked OOAD questions, and you have to come up with class diagrams and object interactions to justify the requirements of the use case.

Try to show them why you are passionate about Apple, why you think you want to join them, what value you will bring to them, etc. (typical behavioral questions).

Be very confident about what you put on your resume; the interviewers are very smart to find out if you lack confidence or lie on your resume. Be prepared to explain each and every word with examples. They are hiring you as an FTE; they need to verify your genuineness.

Overall, although it was an enervating series of interviews (I personally have never faced so many back-to-back interviews), when I analyzed each and every round, I had good reason to believe that I had done very well.

After a day, the recruiter called and gave me the good news!

Questions

Due to NDA, I am not going to disclose any. I have given general guidelines about how you should prepare. Doing LeetCode "regularly" helps!

Was this helpful?

Interview Statistics

The following metrics were computed from 5 interview experiences for the Apple Senior Software Engineer role in Sunnyvale, California.

Success Rate

60%
Pass Rate

Apple's interview process for their Senior Software Engineer roles in Sunnyvale, California is on the easier side as most engineers get an offer after going through it.

Experience Rating

Positive80%
Neutral0%
Negative20%

Candidates reported having very good feelings for Apple's Senior Software Engineer interview process in Sunnyvale, California.

Apple Work Experiences