OA

Problem 1:

Servers Connected in a ring configuration. Determine the minimum time to tranfer data to all servers from a given server.

Problem 2:

Very similar to knapsack problem

Outcome:
Passed all test cases on Problem 1 .
TLE for 4 test cases in problem 2.
Recruiter reached out 2 days later to schedule direct onsite.


Onsite:

Every round was about 20-30 min Leadership Principles and 30 min coding.

I had examples ready for ~10 Leadership Principles and was able to easily answer them and also handle any followup questions.

Coding 1:

Low level programming. Design a package interface and a package manager to install all necassary dependencies.

Outcome: Took some time initially to confirm the structure of the code. Finally landed on one class for a Package(dependencies = List[Package]).
Another class PackageManager that determines the order of install for a set of Packages.
Basic DFS solution with optimisation resulted in O(n) solution.

Coding 2:

Design a cache for a search system that can have filters.

Outcome: Problem was super vague and took me forever to clarify and get to the details.
Was able to only code a very rough solution with lots of comments. The code was not fully functional, but I was able to explain every part of it and the assumptions and working of every function in the class. Used HashMap and Doubly Linked list
Basically 4 concepts: Key determination, insert startegy, retrieval strategy and eviction startegy
This might have been the bar raiser mostly. Interviewer left me confused on whether I did well or not.

Coding 3:

Course Schedule 2: https://leetcode.com/problems/course-schedule-ii/

Outcome: Very straightforward. Got to the solution quickly. Explained code.

System Design:

The problem was vague but as I discussed more I finally ended up designing an ETL system.
Handled cases like long running loads, high scale, retries, logging, write performance, updates, monitoring.

Interviewer was pleased with the final design. The design was like a patch of spaghetti :P.


Recieved feedback that I passed one day after onsite. Recruiter confirmed availibilty for Hiring Manager round


Hiring Manager

Very candid discussion about the role, my experience, what I can expect, how I can grow, team structure, workflows etc.


Offer

Recieved callback next day regarding verbal offer numbers

Base: 175K
Sign On 1st year: 90K
Sign On 2nd year: 70K
RSU: 900 units
Relocation: 7k

TC year 1: ~275K

Tried to negotiate but recruiter got back saying that its the highest possible.

Result

Accepted the offer as the recruiter only gave me 1 day deadline after sending written offer.
I found this really stupid and annoying. Felt it was done only to fill their recuiter quota.
Was told that if I ask for time, I may not be considered as there are many in pipeline.

A week later I declined the offer as I got competeing offer from Apple and I preferred Apple due to Bay area location and better culture.

Apple Interview: https://leetcode.com/discuss/post/6579616/apple-ict3-full-stack-engineer-interview-si3q/

Comments (5)