It took about a week and a half for HR to contact me and schedule two interviews.
The first one was with the team leader, and the second with another engineer at the firm. The first interview was a little personal, but mostly technical, where I answered an algorithm question in C. The second one was harder and also included a C programming question.
Both interviewers were very helpful and pleasant, and gave some hints when needed.
After a week, I was notified that I had passed on to the next stage, and there is supposed to be another stage afterwards.
I needed to code an algorithm that manages a parking lot. Only one car gets to the entrance at a time, and there are two sensors: one at the entrance and one at the exit. This is a 24/7 working lot, and I had two other functions to use: openGate() and closeGate().
When a car arrives at the lot, if there is a free spot, the gate needs to be opened and closed afterwards. If it is full, the car will wait until there is a free spot. The exit needs to be monitored using the sensor as well.
How do you get the number of spots in an area? How many lines will there be between all dots? How will you map them? How can you find the shortest distance? Can you tell between which dots the shortest distance is? All in C coding.
The following metrics were computed from 23 interview experiences for the Apple Software Engineer role in Israel.
Apple's interview process for their Software Engineer roles in Israel is very selective, failing most engineers who go through it.
Candidates reported having very good feelings for Apple's Software Engineer interview process in Israel.