A

Apple

Software Engineer (ICT3)

Interview Date

December 2021

Result

Offer

Difficulty

Medium to Hard

Rounds

4 interviews (each 1 hour)

Drive Type

Full-Time

Topics asked

JavaData StructuresAlgorithms (Meeting Rooms IIMedian of Two Sorted ArraysFirst Last Pos of Element in Sorted ArrayPath Finding (DFS)Reverse Linked ListReverse Nodes in K Group)HTMLJS (Checkerboard)Object-Oriented Programming

Detailed experience

Role: Software Engineer (ICT3)

College: Not Specified

Interview Date: December 2021

Interview Type: Full-Time

Result: Offer

Difficulty: Medium to Hard

Rounds: 4 interviews (each 1 hour)

Topics Asked: Java, Data Structures, Algorithms (Meeting Rooms II, Median of Two Sorted Arrays, First Last Pos of Element in Sorted Array, Path Finding (DFS), Reverse Linked List, Reverse Nodes in K Group), HTML/JS (Checkerboard), Object-Oriented Programming

Experience:

The candidate interviewed for the UMC team at Apple. There were four 1-hour interviews with an hour break after the first two.

Interview 1: Coding w/ Manager + Engineer
The first question was a Java question: given a base class (library) and another class extending it, the candidate was asked if there was anything "odd" about the extending class. The second question was similar to Meeting Rooms II: build a method `bookApi(int id, int startTime, int endTime)` that returns a boolean indicating if a room with `id` can be booked at the given timeslot. The candidate rated this round as "no hire" due to the manager's demeanor.

Interview 2: Coding with another manager and engineer
The first question was Median of Two Sorted Arrays. The candidate provided the O(m+n) approach but couldn't quite get the optimal approach. The second question was Java-related: implement `hasNext()` and `next()` for a `MovieIterator` class. The candidate rated this round as "soft hire but leading to no hire."

Interview 3: Coding with two engineers
The first question was to create a checkerboard in HTML/JS. The candidate was rusty but got a working solution. The second question was an extension of First Last Pos of Element in Sorted Array, but instead of first and last index, the output should be the number of occurrences of the element. The candidate rated this round as "soft hire."

Interview 4: Coding with two engineers
The first question was a pathfinding problem: given a list of obstacles, a 2D grid, start, and end points, return true if a path exists. The follow-up was to return the actual path. The candidate used a simple DFS, and the interviewer was satisfied. The second question was Reverse Linked List as a "freebee," followed by Reverse Nodes in K Group. The candidate used the recursive method and was not asked to optimize for space. The candidate rated this round as a "strong hire."

Overall, the candidate felt it was a good experience for improving interviewing skills.

Posted on - 12 Nov 2025
Apple Interview Experience - Software Engineer (ICT3) | OAHelper