Ho presentato la mia candidatura online. Ho sostenuto un colloquio presso Amazon (Vancouver, BC)
Colloquio
One manager started talking about high level business perspective and their clients' and stuff (I am not sure why coder who focuses on bug fixing or new feature development should worry about that). Then he asked me to write down class implementation on the whiteboard. I told him that I will be writing using PHP. He asked: "Does PHP have classes? Last time I used it, it was PHP version 3 and it didn't have classes". Wow, they guy missed the whole trend of web industry for the last 10 years!
Another manager asked me how I would deal with increasing web traffic and he started drawing load balancer on the whiteboard (to me load balancer seems more related to infrastructure engineer than to developer but whatever). I told him that I would rewrite the code using NodeJS speeding up application 10 times using asynchronized paradigm. He didn't know what NodeJS was.
Another interviewer who was developer said that they used Java at Amazon but he personally preferred to use C++. Well, again, C++ appeared decades ago. Within last 5-10 years so many new technologies were developed that Amazon seemingly missed.
Interviewed for silicon team. Have only been asked about the domain specific knowledge in 1st round and system design in 2nd round and C coding in 3rd round.
The interviews were 50 mins each.
Ho sostenuto un colloquio presso Amazon (Toronto, ON)
Colloquio
First round with hr screening - 2 leetcode questions then hr manager screening then the loop which consists of 4 interviews each an hour long. The 4 interview questions they asked where three medium leetcode questions. And one system design interview question about how to shadow deploy a test software to millions of users.
The phone screen went longer than expected, focusing heavily on implementation details. The interviewer really grilled me on my approach to a Least Recently Used (LRU) cache, asking how I'd combine a hashmap with a doubly linked list. I felt well-prepared since I had gone through system design examples on PracHub, which made me comfortable discussing eviction policies. The later rounds included more technical questions and behavioral interviews, but in the end, I received an offer, though I ultimately decided to decline. Overall, I’d say the process was average, with solid questions.
Domande di colloquio [1]
Domanda 1
Design and implement a Least Recently Used (LRU) cache supporting get(key) and put(key, value) in O(1) average time. Walk through combining a hashmap with a doubly linked list, eviction policy when capacity is exceeded, and how you'd extend it to handle thread-safe concurrent access.