Taro Logo

Software Engineer New Grad Interview Experience - Toronto, Canada

December 1, 2018
Positive ExperienceNo Offer

Process

I completely bombed the interview. It was a tough interview with unconventional questions, which I was not expecting. I decided to interview in JavaScript, a choice I now regret. I wish I had chosen Java or C++ instead.

The questions were DSA-related but took a more practical approach. While this is often better than what most interviews do, it was still a surprise to me. As soon as the interview ended, I knew I was rejected.

Questions

Explain how threading works in JavaScript, and how async/await uses the threading model.

Write a function debounce(fn, timeout) which accepts a function and timeout as inputs and returns a function. This returned function will only allow fn to run after timeout milliseconds.

Using JS Browser DOM API available functions, write getElementsByClassName(className) which accepts a string className and returns a list of HTML Elements that have the required className.

Create the class SnapshottableArray, which is a normal array but has the ability to take a snapshot in time of the current values of the array, giving a handle/id. It has the class signature below. Focus on reducing space at the cost of time complexity.

Fill in the function bodies to complete the class. (I wrote the class with types to make it clear what everything does, but the code should be in JS.)

javascript class SnapshottableArray { // create new snapshottable array with size SnapshottableArray(int size) {}

// set's array at index to value void set(int index, int value) {}

// return the array at index's value int get(int index) {}

// take a snapshot and return the handle/id of it int takeSnapshot() {}

// return the array at index's value for the given snapshot, represented by id int getSnapshotValue(int id, int index) {} }

Was this helpful?

Interview Statistics

The following metrics were computed from 2 interview experiences for the Google Software Engineer New Grad role in Toronto, Ontario.

Success Rate

0%
Pass Rate

Google's interview process for their Software Engineer New Grad roles in Toronto, Ontario is extremely selective, failing the vast majority of engineers.

Experience Rating

Positive100%
Neutral0%
Negative0%

Candidates reported having very good feelings for Google's Software Engineer New Grad interview process in Toronto, Ontario.

Google Work Experiences