Live data from Hacker News

Microsoft changed how it interviews software developers

businessinsider.fr

101–110 of 348 posts

Re: Microsoft changed how it interviews software developers

#101
post #59

Earlier quoted context omitted.

> Fundamentally: Why are you having the "Can you code your way out of a wet paper bag" conversation instead of the "How much value can you add to this company" conversation? Because people lie. It's that simple. Referrals lie, CVs lie, friends lie to get friends in a position. Do understand that there's a fundamentally different set of problem a 40.000 FTE company has to deal with in comparison to a 30 person startup…

Many people interviewing there are already among the most highly paid people in the world (lots of them are just moving around within that group) so that argument is pretty irrelevant.

I assume Google is looking for people who absolutely want to work at Google. Making the process cumbersome allows them to get candidates who stay at the company even if they have to do work that they don't like.

Re: Microsoft changed how it interviews software developers

#102
post #16

Earlier quoted context omitted.

According to the Wikipedia [1] Reasons for the shape might include: * A round manhole cover cannot fall through its circular opening, whereas a square manhole cover might fall in if it were inserted diagonally in the hole. The existence of a "lip" holding up the lid means that the underlying hole is smaller than the cover, so that other shapes might suffice. (A Reuleaux triangle or other curve of constant width would…

15 years ago I was interviewing for an engineering job and the VP of engineering at a company asked this question. I happened to have heard this question previously so spouted off a bunch of answers and impressed the heck out of the VP. And that is the real problem with this kind of questions. They largely depend on if you heard the question before or not.

I got into Oxford like that. Basically the interviews are a bunch of interesting questions like "How could I take the log of -1?" or "How is e defined?".

If you already know the answer, your main problem is acting like you're thinking it through.

Re: Microsoft changed how it interviews software developers

#103

Earlier quoted context omitted.

Fizzbuzz is a trivial test to detect people who are basically fraudulent in their claims of programming ability. You shouldn’t need to study for it. Sorting algorithms, sure.

You could just ask the candidate to explain how to use modulus correctly, and not even need to break out the markers.

Fizzbuzz is not really about testing someones understanding of a modulus operator, it would be very easy to make an alternate fizzbuzz that does not require using modulus, and arguably anyone hiring for a large company should have their own as fizzbuzz is pretty widely known.

The point of fizzbuzz though is to make someone create a very simple algorithm on the spot. In my experience, there are some people in this world who simply lack the ability to structure their thoughts and plans into a complete set of ordered instructions. That's why you sometimes find recipes online that follow a structure like:

1. Dice the onions

2. Brown the mince for 5 minutes

3. But first, add the onions and tomato paste to the mince

It's the same personality type that cleans a room by walking backwards and forwards to the cupboard of cleaning supplies as they need them rather than grabbing all the cleaning supplies they can predict needing first.

Now, everyone does these kinds of things to a certain extent, but you can't program anything significant if you can't drop into an ordered mindset on command. Fizzbuzz tests your ability to do that without requiring you to know any apis or frameworks or computer science or even a programming language, since you can just as easily do it in psudocode.

Re: Microsoft changed how it interviews software developers

#104
post #59

Earlier quoted context omitted.

> Fundamentally: Why are you having the "Can you code your way out of a wet paper bag" conversation instead of the "How much value can you add to this company" conversation? Because people lie. It's that simple. Referrals lie, CVs lie, friends lie to get friends in a position. Do understand that there's a fundamentally different set of problem a 40.000 FTE company has to deal with in comparison to a 30 person startup…

> Professions like laywers and doctors need to go through significantly longer hazing rituals At least for doctors this isn't universally true. There's continuing education/certification, (which you have to do every $period) there's public reputation, there's lots of networking. From what I've seen the interviews take few hours in one day and people usually already know each other.

The hazing the doctors go through is during residency, where they spend years, working like horses, for no money.

I'd much rather deal with whiteboard interview bullshit a few times in my life, then go through residency in the medical field.

Re: Microsoft changed how it interviews software developers

#105
post #27
post #3

https://blog.usejournal.com/rethinking-how-we-interview-in-m... is the original post by a PM at Microsoft. It doesn't have any useful information about a pure technical interview for software engineering. >(Note: I started at Microsoft when we were still asking questions about why manhole covers were round, how many ping pong balls would fill a 747, and how to reverse a linked list. In 20 years here, I’ve yet to have…

There was a linked list interview question going around back then that went: In constant time, without allocating memory, given a pointer to the first element of a linked list, how can you tell if it eventually ends in a null or if it loops back on itself at any point? I actually ended up implementing the solution while tracking down a hang in a DCOM service I was working on...

This is a pretty standard linked list question (called cycle detection) – one of the easiest questions on LeetCode. You can use the two-pointer method to just detect if there's a cycle. If you want to find the node that the cycle starts at, you can just walk the slow pointer from the slow/fast meeting point and a pointer to the head of the list 1 step at a time until they both meet (there's a simple explanation for this that I won't bother writing out).

Re: Microsoft changed how it interviews software developers

#106
post #49
post #40

Earlier quoted context omitted.

He meant constant memory. It's to invalidate solutions marking items visited. I too got this question at an interview once, and failed. For fun I asked everyone at work and predictably nobody came close to figuring it out.

No, I meant O(n) but used the wrong word for it. Marking items visited can actually work, because on any(?) modern OS the memory for the elements in the list would be allocated at even addresses, meaning the low order bit of the Next pointer is always zero and can be reused as a marker.

Your solution isn't thread safe :)

Re: Microsoft changed how it interviews software developers

#107

Great, now can Netflix, Google and Facebook do this, too? Not because I want to work in these places, but because they influence everyone else and as a senior engineer in the systems space I feel I shouldn't need to study days or weeks for fizzbuzz sorting algorithms questions that are designed to test comp sci recent grads. I have a proven career, and was never suddenly stumped in a project due to not being able to.…

Fizzbuzz is a trivial test to detect people who are basically fraudulent in their claims of programming ability. You shouldn’t need to study for it. Sorting algorithms, sure.

I remember a colleague who was affronted at being asked to do Fizzbuzz. I told him it was just a simple screen for fraudsters and bullshit artists and not to take it personally, they didn't know him from Adam, after all.

http://weblog.raganwald.com/2007/01/dont-overthink-fizzbuzz....

Re: Microsoft changed how it interviews software developers

#109
post #20
post #3

https://blog.usejournal.com/rethinking-how-we-interview-in-m... is the original post by a PM at Microsoft. It doesn't have any useful information about a pure technical interview for software engineering. >(Note: I started at Microsoft when we were still asking questions about why manhole covers were round, how many ping pong balls would fill a 747, and how to reverse a linked list. In 20 years here, I’ve yet to have…

Manhole question is bad, because around half manholes im real world are squared. So the correct answer is that they are not in fact round and square works perfectly fine. Of course I know right answer, but it has zero to do with me being smart and a lot to do with me being in right culture and thus having heard about it before. Which is exactly what it test along with other brain teasers - have you encountered this s…

The correct question, obviously, would be "why in some places they make manhole covers round and which advantages and disadvantages over square ones they have?" Which, as any good question does, already contains part of the answer.

Re: Microsoft changed how it interviews software developers

#110
> ... Second, we run through a real problem the team is trying to solve — improving satisfaction, increasing retention, boosting usage of a service or feature. The fact that it’s a real problem that we’re working on helps foster a collaborative conversation.

maybe I'm reading too much into this but ... for some reason, none of these questions are highly programming-centric (e.g. implement a sort algorithm, build a B-Tree, or even just implement the singleton pattern in C#, or whatever). all of the questions are human behavior-centric. and I wonder if maybe Microsoft has concluded that the really important challenges are not technical challenges, but marketing ones.

Post reply on HN