Apple Interview Prep
Apple is known for being super secretive about its hiring process. But, I’ve tried to create some transparency in this post. This interview process is applicable especially for software and data interviews. Here are the typical Apple Interview Process :
CoderPad Interview / Phone Screen
System Design Technical Discussion → Again Phone screen.
If this is cleared, then Apple sets you up for a series of on site virtual interviews. This includes the below :
Coderpad technical Screening → Again Coding Questions
Object Oriented Design Interviews
Behavioral Interviews
System Design Interviews
Skip Level Manager Interview
There can be more interviews based on your role and requirements as well. But basically, a 7-8 round interviews is expected for a full time position.
Now, here’s the resources to prepare for Apple Interviews : For Coderpaid interviews, along with Blind 75 , make sure you leverage Apple Top 100 Most Asked Leetcode questions.
Apple Top 100 Most Asked Leetcode Questions :
[E] https://leetcode.com/problems/best-time-to-buy-and-sell-stock/
[M] https://leetcode.com/problems/longest-substring-without-repeating-characters/
[H] https://leetcode.com/problems/median-of-two-sorted-arrays/
[M] https://leetcode.com/problems/product-of-array-except-self/
[M] https://leetcode.com/problems/longest-palindromic-substring/
[M] https://leetcode.com/problems/container-with-most-water/
[M] https://leetcode.com/problems/search-in-rotated-sorted-array/
[M] https://leetcode.com/problems/letter-combinations-of-a-phone-number/
[M] https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/
[H] https://leetcode.com/problems/find-median-from-data-stream/
[H] https://leetcode.com/problems/regular-expression-matching/
[E] https://leetcode.com/problems/remove-duplicates-from-sorted-array/
[H] https://leetcode.com/problems/longest-valid-parentheses/
[E] https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/
[H] https://leetcode.com/problems/count-of-smaller-numbers-after-self/
[M] https://leetcode.com/problems/flatten-nested-list-iterator/
[M] https://leetcode.com/problems/all-nodes-distance-k-in-binary-tree/
[M] https://leetcode.com/problems/insert-delete-getrandom-o1/
[E] https://leetcode.com/problems/reverse-words-in-a-string-iii/
[E] https://leetcode.com/problems/middle-of-the-linked-list/
[H] https://leetcode.com/problems/largest-rectangle-in-histogram/
[M] https://leetcode.com/problems/binary-tree-level-order-traversal/
[E] https://leetcode.com/problems/maximum-depth-of-binary-tree/
[M] https://leetcode.com/problems/longest-consecutive-sequence/
[E] https://leetcode.com/problems/intersection-of-two-linked-lists/
[M] https://leetcode.com/problems/implement-trie-prefix-tree/
[M] https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree/
[E] https://leetcode.com/problems/delete-node-in-a-linked-list/
To prepare for System Design Interviews , use the below resources :
System Design : Link
Advanced System Design : Link
The next interview to prepare for is Grokking the object oriented Design Interview :
Object Oriented Design : Link
Case Studies to Prepare for here are :
Design a Library Management System
Design a Parking Lot
Design Amazon - Online Shopping System
Design Stack Overflow
Design a Movie Ticket Booking System
Design an ATM
Design an Airline Management System
Design Blackjack and a Deck of Cards
Design a Hotel Management System
Design a Restaurant Management system
Design Chess
Design an Online Stock Brokerage System
Design a Car Rental System
Design LinkedIn
Design Cricinfo
Design Facebook - a Social Network
These resources should be helpful to crack the apple interviews should you get one.
Hope this is helpful!.