This memorial day, here's my give back to the amazing LC community!
With my Apple interviewing experience would like to share that LeetCode questions are just a subset of coding portion of the overall interview at Apple. They ask a ton of resume based question. Unlike Meta, Google, HBO Max, VMWare, WalMart, Microsoft, etc. they focus heavily on tools, technologies relevant for that role for that particular team.
Status: 18 yoe(most of it at overseas)
Position: Senior Software Engineer at Apple
Location: Cupertino/NY
Date: May, 2022
Process: Recruiter reached out over email. All coding questions were on CoderPad.
Phone Screen: Anagram based question LC-medium. Finished coding in 15 minutes. Interviewer was happy and spent rest of 25 minutes on behavioral and resume questions.
Virtual Onsite
There were 6 rounds: 45 min each.
Result
Reject next week
Final Thoughts
Interviewers were nice and I never felt that unncessary grilling on a particular question and it was a +ve experience.
I made mistakes in assuming that 1) practicing the LC tagged questions of a company would help for that company 2) for FAANG tools/technologies in resume are secondary and DSA is primary skill. Given that I 'cracked' the two DSA LC hard questions in the interview with correct explaination, I was hoping for at least a downgrade offer. But Apple is looking for 10/10 on tools/tech used in the past with very specific versions of those tools(including any breaking changes). So I'd advice to brush all of them up when you apply for experienced positions with them.
I hope this helps others preparing for Apple!
abbr
LC: LeetCode
SSE: Senior Software Engineer
yoe: Years of Experience
HLD: High Level Design aka System Design
LLD: Low Level Design aka class level design
KB: Knowledge Based questions
DSA: Data Structures and Algorithms
OOP: Object Oriented Principals
FAANG: aka MAANG