Technical interviews at Apple, as with other FAANG companies, are among the hardest interviews to get through. Apple, a leading global tech company, and one part of the prominent FAANG (Facebook, Apple, Amazon, Netflix, Google) companies, is a much sought after work place for tech professionals the world over.
Famed for its work culture, lucrative compensation, and perks, Apple receives thousands of applications annually for various tech roles. Given a diverse talent pool to dip into, Apple’s technical interview process is designed to identify the best tech resources.
Technical interviews at Apple centre around questions compiled to test a candidate’s coding and behavioral skills, key focus areas being data structures, algorithms, design and communication abilities.
While it isn’t possible to go over every question formerly asked in Apple interviews over the years, analysing past questions will give you insights into what to expect during your interview. Apple, as an industry leader, focuses strongly on innovation. Hence, questions are regularly updated keeping in line with latest technological developments, market trends, and job specific requirements. Identifying the skill sets the latest questions focus on will enable you to develop the right approach to preparing for an interview at Apple.
Here's what this article entails:
- Apple interview questions to ace the coding interview
- 1.1 Technical/Coding questions
- 1.2 Behavioral Questions
Below is a list of recently asked Apple interview questions to help prepare for upcoming technical interviews.
Apple interview questions to ace the coding interview
Technical/Coding questions
1. If you are searching a computer for content, what are the parameters you will consider for performance?
2. Given a list of intervals, merge all the overlapping intervals to produce a list that has only mutually exclusive intervals.
3. Explain the difference between shallow copy and deep copy.
4. Given the head pointers of two linked lists where each linked list represents an integer number (each node is a digit), add them and return the resulting linked list.
5. What are B trees and their applications?
6. Given a double, ‘x’, and an integer, ‘n’, write a function to calculate ‘x’ raised to the power ‘n’.
7. How do you design the Spotlight search feature In Mac OS?
8. Which sorting algo would you implement as a Unix library and why?
9. Explain which Json framework is supported by iOS?
10. How do you parse a phone number from a huge database of a billion web pages in 30 minutes?
11. Given a positive integer, target, print all possible combinations of positive integers that add up to the target number.
12. Given a list of intervals, merge all the overlapping intervals to produce a list that has only mutually exclusive intervals.
13. Search for a given number in a sorted array that has been rotated by some arbitrary number. Return -1 if the number does not exist. Assume that the array does not contain duplicates.
14. Suppose under a directory / web there are 50,000 html files. List all files with phone numbers in the following patterns.
- (xxx)-xxx-xxxx
- Xxx-xxx-xxxx
15. When would you use a linked list instead of an array list?
16. Explain event driven programming in C with an example.
17. Given an API to find all IPv4 addresses in a log file, find all IPs that occurred only once. Follow-ups
- What if the log comes from a data stream?
- If the machine has 4GB RAM, will there be a problem?
18. Given a BST insertion order, {5,2,8,3,6,9,1}, find the ABC notation for 6,1,10, 2 which is “10”, “00”, “Not Found”, “0”. The ABC notation in the tree is defined as follows:
- “0” means travel left
- “1” means travel right
- “Undefined” means hit the root
- “Not Found” means not present in tree
19. Write a query which returns 5 persons who spent the most from a table where the table contains customer id, product id and expenses. Customer id can be duplicate.
20. How will you find the square of a number without using the * or ^ sign?
21. Design a bookshelf class model to perform checkout of book operation.
22. Given an array with positive integers only, find the MN integer that is missing from the array.
23. How will you test if a high-order bit is set in a byte.
24. Write a program to read a string with first_name, last_name, age and sort it based on any of the input column name; Assume the string to be a giant string; Sample string
- john doe 33
- smith black 9
- diana yale 12
25. Implement a job scheduler which takes in a function ‘f’ and an integer ‘n’ and calls ‘f’ after ‘n; milliseconds.
Behavioral Questions
1. What were your best and worst days over the last four years?
2. Explain an achievement you are particularly proud of?
3. How have you overcome failure and what were your learnings from it?
4. How would you explain a modem and its functions to an 8 year old?
5. Why do you want to join Apple?
6. What will you miss about your current job if you’re hired at Apple?
7. If hired, what would you want to work on?
8. Have you ever disagreed with your manager?How did you resolve it?
9. Why should you be hired at Apple?
10. Are you a positive person? What brings you down?
Apple’s interview process features questions unique to its organizational requirements. Preparation is key to getting through the interview. While the company may provide preparation material before the interview, in order to stand out among the competition, you will need a more structured approach.
To know more about the interview process and questions asked at technical interviews of other FAANG companies, refer the following resources.
- Understanding the Google Interview Process
- Top 29 Questions to Crack the Google coding interview
- 35 Microsoft Technical Interview Questions 2020