Live data from Hacker News

My Job Interview at Google (2008)

catonmat.net

131–140 of 169 posts

Re: My Job Interview at Google (2008)

#131

Earlier quoted context omitted.

Did they not like that it wasn't wholly your project?

> Did they not like that it wasn't wholly your project? No idea - the feedback in full was 'we're not sure you have enough practical experience programming - maybe try working on an open source project'. Then they literally showed me the door at that point lol.

It's an interview, so a more accurate piece of feedback would have been "you couldn't convince us you have practical experience programming."

So maybe they had a question like, how would you solve those problem, and you said, here's the solution, but they really wanted you to say, there are three potential approaches that i would use, these are the things i evaluate to decide which approach is likely best, these are the war stories that I've had that led me to refine my thinking to this point.

Re: My Job Interview at Google (2008)

#132

Earlier quoted context omitted.

> Did they not like that it wasn't wholly your project? No idea - the feedback in full was 'we're not sure you have enough practical experience programming - maybe try working on an open source project'. Then they literally showed me the door at that point lol.

It's an interview, so a more accurate piece of feedback would have been "you couldn't convince us you have practical experience programming." So maybe they had a question like, how would you solve those problem, and you said, here's the solution, but they really wanted you to say, there are three potential approaches that i would use, these are the things i evaluate to decide which approach is likely best, these are…

Yeah I guess but how much open source do they want? If you've already got a hundred thousand lines and it isn't fixing what they're after then suggesting something else would be more helpful. But I guess their interview method works for them.

Re: My Job Interview at Google (2008)

#133
post #127

Earlier quoted context omitted.

Exactly this. A senior should know that JavaScript runs single threaded with an event loop, and therefore doing heavy calculations will block your user interactions. If you don't know this, you also won't know when to use WebWorkers etc. Juniors can learn, seniors should be the ones teaching them. Seniors should define the architecture of your solution, and solve weird problems. You cannot do this without proper in-d…

Yeah but here's the thing: I do understand the event loop, I understand the sync/async models in JS but I have very little knowledge of how setTimeout works in this context. That's because I've never used it, and I've never used it because the book that I read 15 years ago about JS said something like this: "Here's a function that allows you to run some code after some time. If you feel the need to ever use it, it me…

I'm the kind of interviewer that would keep asking until you do know. I would actually start with asking about the event loop. Don't know that, no problem, what happens with setTimeout()? Don't know that, no problem, how does async, await work? Don't know that, why do we need WebWorkers? What happens with an infinite loop? How do events work? etc.

There are plenty of ways to see how this person came into contact with the event loop concept, whether in theory or in practice.

Re: My Job Interview at Google (2008)

#135

Reading that stuff always makes me feel incredibly stupid (or rather clueless). I wouldn't be able to answer most of those questions off the top of my head. Including this weird clock hand question (which is probably some trivial math that might or might not have been taught to me more than a decade ago and which I never ever actually applied since). Then I probably have to remind myself that I'm (halfway successfull…

> which is probably some trivial math...

The clock hand problem can be solved with the Rule of Three

https://en.wikipedia.org/wiki/Cross-multiplication#Rule_of_T...

Re: My Job Interview at Google (2008)

#137
post #116

Earlier quoted context omitted.

I guess it's an important question because it is about the event loop. Lots of weird things (bugs) can happen when you don't understand how the event loop work. I would definitely pass a "senior" javascript dev that don't know/understand the concept.

Exactly this. A senior should know that JavaScript runs single threaded with an event loop, and therefore doing heavy calculations will block your user interactions. If you don't know this, you also won't know when to use WebWorkers etc. Juniors can learn, seniors should be the ones teaching them. Seniors should define the architecture of your solution, and solve weird problems. You cannot do this without proper in-d…

I agree that a senior should know this, but at the same time I've never run into a problem at work that required me to start using web workers because what I was doing was so CPU intensive. Most professional Javascript development is pretty run of the mill.

Re: My Job Interview at Google (2008)

#138

I recently had an interview at a taxi firm that followed this format. One two three pre-interviews followed by a day of 5 grueling 1 hour interviews. I didn't get the role. Apparently the frontend guy I had the first interview of the days five was concerned about my technical skills. I mean, I find it insulting, having worked for the last 12+ years as a developer to be told that there were "concerns about your techni…

Google told me I should try doing some open source projects. I had about a hundred thousand lines in a major open source project at the time.

Did you tell them to, ahem, Bing it?

Re: My Job Interview at Google (2008)

#139

Earlier quoted context omitted.

Google told me I should try doing some open source projects. I had about a hundred thousand lines in a major open source project at the time.

Did you tell them to, ahem, Bing it?

Not sure what you mean, sorry?

Re: My Job Interview at Google (2008)

#140

Earlier quoted context omitted.

Exactly this. A senior should know that JavaScript runs single threaded with an event loop, and therefore doing heavy calculations will block your user interactions. If you don't know this, you also won't know when to use WebWorkers etc. Juniors can learn, seniors should be the ones teaching them. Seniors should define the architecture of your solution, and solve weird problems. You cannot do this without proper in-d…

I agree that a senior should know this, but at the same time I've never run into a problem at work that required me to start using web workers because what I was doing was so CPU intensive. Most professional Javascript development is pretty run of the mill.

> I agree that a senior should know this, but at the same time I've never run into a problem at work that required me to start using web workers because what I was doing was so CPU intensive.

A few weeks ago I interviewed a front-end developer who said that in his current job he rolled into production some code that blocked the UI for nearly 1 minute, and that problem was only noticed in production because during testing they didn't used realistic data.

He then said that his approach to solve the problem was to rewrite everything from scratch using a faster framework.

Unloading the blocking tasks to web workers wasn't even in his universe of potential alternatives.

Suffice to say, he was not hired.

If you're applying for a front-end position and are oblivious to basic GUI principles, such as how not to block the UI, then you might not be lucky.

Post reply on HN