I got an internal referral for an Apple DS position. The process was pretty long, so I'm coming back to add my interview report.
Result first: after the virtual loop they scheduled an onsite and said I would meet a VP, HR, and have a team lunch. I was in China at the time, so I talked with the recruiter about timing for after I got back. Later I was told the position was repurposed, so the onsite never happened.
The earlier process was recruiter, then HM, then technical screen. After that came a presentation and several virtual interviews, spread over a few days.
Technical screen
It was SQL, on keyboard-related data, with two tables:
usage: date, device, platform, language, number of characters typed.
settings: settings on the device, such as whether things like the suggestion bar and autocorrect are turned on.
The task was to calculate, for one given day, the autocorrection enablement rate for each language, meaning the share of users with autocorrect turned on. You had to join usage and settings and then compute it by language.
The Python part was pretty basic: given a list with repeated numbers, count how many times each number appears.
Presentation
One hour. I talked for 15-20 minutes and the rest was mostly Q&A. I was asked to briefly introduce my technical and management experience first, then pick one project and go deep on it, with relevant charts.
Virtual interviews
The other rounds were about 30-45 minutes each, with technical, product, and statistics questions, plus some management questions.
- Telemetry / data collection
They gave a scenario of a connected vending machine, with an app that also makes recommendations based on purchase history. The product was still early, they hadn't even built the hardware yet, and the question was how to design the telemetry.
We first talked about what to look at and how to define the metrics, and then it went down to concrete data structures. Each time, the device reports a dictionary, the server stores it as one row, and it contains things like device, region, transaction, and product category. Then I had to write the metrics out as concrete metric specs.
The follow-ups were quite detailed, for example when an event fires, what one report represents, how to calculate daily usage, and how to link a recommendation to the transaction that comes after it.
There was also the question of how to define a failed recommendation: if the recommendation was shown but the user didn't buy, does that count as a failure? Besides not buying, what other failure cases are there? What extra information do you need to log to tell them apart? We also talked about privacy at the end.
- Product experience / user research
This round was about the keyboard typing experience. For example, in a browser input box, the positions of the period and the space key make it easy to mis-tap, so a stray period ends up in the middle of the search query.
They asked how to measure this problem, how to judge its impact, and how to validate it together with user research. They also followed up on the sample size for the research.
The needs are also different when typing a search query versus typing a URL.
- Data interpretation / statistics
They gave me a weekly report for a new feature rollout, with the creation rate and sample size for different platforms, and numbers for two consecutive weeks.
One platform's rate was lower than the previous week, but the number of devices added had gone up a lot. The PM thought retention might be the problem and asked whether that judgment was right.
Two other platforms had low rates and the PM wanted to prioritize improving them. Another platform had the highest rate but a very small sample, and if you wanted to put resources there first because of that, how would you look at it from a statistics point of view?
- Management / cross-team
There were also questions about team management, prioritization, communication, and how to work with the engineering team.
Discussion
Loading comments…