Facebook | iOS Engineer | Phone Interview
Anonymous User
5824

It was supposed to be a 45 mins call but went on for about 50-55 minutes
The interviewer divided the interview into 3 parts (kind of)

Part 1 (iOS theoretical questions)
What parameters would you keep in mind while designing an iOS app to make sure you are using all the system resources efficiently?
What is concurrency? How would you achieve concurrency in iOS app? When do you need it?
What are thread safe queues? (related to GCD)

Part 2 (Coderpad question related to iOS)

You have to implement a pull to refresh functionality in a ViewController which contains a TableView. Currently, the TableView is displaying stories from a data source which contains the following stories
[A, B, C, D]
when you pull to refresh, you get three new stories from server : [D, E, F]
now you have to display the stories in this order [D, E, F, A, B, C]
Note: when you pull to refresh, you have to display the recently fetched stories first and then the previous stories. You don't have to worry about the UI details of pull to refresh feature. Also, don't worry about implementing the TableView methods, just implement the function pullToRefresh()
Follow up: How would you improve the efficiency?

Part 3: (Coderpad binary search question)
https://leetcode.com/problems/first-bad-version/

Comments (11)