Live data from Hacker News

Why do big companies ask unrealistic software engineering interview questions?

tomaszs2.medium.com

51–60 of 92 posts

Re: Why do big companies ask unrealistic software engineering interview questions?

#51
The answer is usually self selection and calibration at scale. Self selection is about people looking like minded colleagues. If everybody is crazy about solving riddles and participates in programming competitions that's what they would be looking for.

Now, about the scale. Anything run at scale needs standardisation. You need to hire 100 senior developers. How do you know they have more or less same level? If every single interview is hand crafted, you'll either need to get all devs envolved (and not everybody is good at coming up with interview questions) or get standard questions and answers to allow a smaller group of people to deal with candidates and coding puzzles fit great there because they're slef contained and isolated. Every realistic question has multiple facets and that's what you get at the system design interview step.

Another problem I've observed was that the more you give the same puzzles to candidates, the easier they look to you. What the means is that you as an interviewer either need to keep your self in check regarding your reactions or you're risking giving a bad interview score in situations where it's not really warranted or there is a chance that the next question you take will be the one you find more complex (to be equal to position level in your head) and that would push the level of questions up. That's another observation I had when some interview questions would become so complex that I knew some of the existing devs would fail the interview for sure.

Does that give good results on the other end? I don't know, but what we definitely know is that there is the whole industry around leetcode to train peeople to pass these challenges specifically and that means that they only thing the interviewer know is that the candidate has put some effort to prepare for the interview meaning they're motivated to join the company. And maybe it's not the worst data point! Some companies actually explicitly mention this fact on their hiring pages.

To add to it, big corps have different ways to make interviews objective in whatever sense they think and that by definition reduces the personal impact. "Why did you ask this question? We've never done it before, we'll need to have a group call to calibrate". After a handful conversations like this you'll just stick to the standard process.

Is there a way to come up with a more human approach? Personal recommendations with some skin in the game I guess. I'm sure in some niche areas like browser engines all good devs know each other well and no interview is often necessary.

Re: Why do big companies ask unrealistic software engineering interview questions?

#52
post #15

As always, it's an imperfect proxy. Nothing more, nothing less. But nobody has found a more reliable proxy yet.

> nobody has found a more reliable proxy yet. Companies have not found a process at scale where they can train their employees to systematically gauge candidates. Small and startup companies where leadership is still involved in the interview process can gauge candidates based on their own technical intuition. So it's false to say NOBODY has a proxy for good software engineering skills. The founders can also look at…

> Small and startup companies where leadership is still involved in the interview process can gauge candidates based on their own technical intuition. So it's false to say NOBODY has a proxy for good software engineering skills.

Is there any proof that this method actually works better though? I've heard plenty of stories of people in smallish (30 FTE or so) startups working alongside some really disastrous hires.

Re: Why do big companies ask unrealistic software engineering interview questions?

#53
post #22
post #6

Don't publish anymore on Medium, people!

https://archive.md/Xk2F4 I find it hard to trust the opinion of any “techie” who writes on Medium personally. It reeks of “I want to be an influencer!” type personalities.

Yep. Strong negative signal from me. I can’t remember the last time I actually clicked the link. Anyone that thinks that the Medium experience is remotely acceptable is living in a world very different to mine. Just as importantly, the quality does tend to be crappy off-cuts from someone with an obvious content creator fetish.

Re: Why do big companies ask unrealistic software engineering interview questions?

#54

If you'd like an article giving an explanation for this that doesn't require upgrading to a paid Medium subscription, try this one I wrote a few years ago: https://blog.plan99.net/in-defence-of-the-technical-intervie... It is, natch, hosted on Medium, so you will see a banner, but unlike this paywalled article it's dismissable. Just click the X to make it go away and then you can read the whole thing for free. The su…

A fizzbuzz question would sufficiently address points 1 thru 5. The issue at hand is that the "unrealistic" algorithm questions aren't fizzbuzz.

There are problems between fizzbuzz and the leet-code algorithms that are small enough to be solvable in 5 to 20 minutes. I like using one of them to complement other non-code questions.

Re: Why do big companies ask unrealistic software engineering interview questions?

#56

If you'd like an article giving an explanation for this that doesn't require upgrading to a paid Medium subscription, try this one I wrote a few years ago: https://blog.plan99.net/in-defence-of-the-technical-intervie... It is, natch, hosted on Medium, so you will see a banner, but unlike this paywalled article it's dismissable. Just click the X to make it go away and then you can read the whole thing for free. The su…

A fizzbuzz question would sufficiently address points 1 thru 5. The issue at hand is that the "unrealistic" algorithm questions aren't fizzbuzz.

Fizzbuzz was the leetcode of yesteryear. It's exactly the same concept, just a different unrealistic question.

The leetcode issue is to a large extent caused by, literally, leetcode.com the website. When I first started doing technical interviewing this website didn't exist, so if you developed a question that wasn't too easy or too hard, covered the bases, fitted well into 45 minutes, that you could calibrate the difficulty of on the fly etc - basically a good question - then you could make it last quite a long time.

At some point people started sharing questions and pre-canned solutions online, and many candidates will cheat by looking up answers and copying them from another screen if they can. Also some shady recruiters started leaking questions to candidates ahead of time. That forced interviewers to start constantly inventing new questions.

One of the points I used to make in interview training is that questions are like programs, you have to design them. Some are better than others, they can vary in efficiency etc. Often you can't really know how a new question will work out until you try it a few times. Making a good interview experience for the candidate is hard work and it's easy to screw up, lots of interviewers do and it leads to a lot of bitterness (e.g. questions that are far too hard or specific or don't fit in the available time).

Unfortunately if you're constantly having to invent new questions to keep ahead of the people sharing them and grinding the process, then the quality will inherently get way more variable. By the time you've calibrated the question it's been leaked already. And there are a finite number of programs that it's reasonable to ask someone to write in a short amount of time, so by now these giant databases of interview questions and candidates memorizing the answers at scale makes it harder to get accurate information, which was the only goal in the end. Because indeed the specific tasks themselves don't matter much.

Re: Why do big companies ask unrealistic software engineering interview questions?

#57
post #48

If you'd like an article giving an explanation for this that doesn't require upgrading to a paid Medium subscription, try this one I wrote a few years ago: https://blog.plan99.net/in-defence-of-the-technical-intervie... It is, natch, hosted on Medium, so you will see a banner, but unlike this paywalled article it's dismissable. Just click the X to make it go away and then you can read the whole thing for free. The su…

Claims 2 and 4 don't apply to the way these algorithmic questions are usually administered at large companies, which is pure whiteboard coding where you can't run any of the code you're expected to write.

Whiteboard coding used to be common but I haven't run a whiteboard interview for over a decade. I don't know how many companies still do that, but it's definitely a bad idea. You want to see how well a candidate knows their tools, and they will be more comfortable working in an editor, so it's a win/win to do that. Also if you do coding interviews from home it's easier for candidates and they're in a more comfortable environment.

So yeah I'm sure some firms do this, but there are plenty of others that don't.

Re: Why do big companies ask unrealistic software engineering interview questions?

#58
Because they have a different problem compared to smaller ones: a huge influx of applicants, and this is an easy way to filter and standardize process across a loooot of interviewers. Is it perfect? Hell no. Does it result in false positives/negatives? Sure. Is it OK for them, considering the volume? Yup.

Re: Why do big companies ask unrealistic software engineering interview questions?

#59
Could not read the whole article but get the gist. Time was that I would have agreed. But I have changed position.

Candidates: you need to appreciate how difficult it is to hire good people, the dishonesty of many candidates, and how limited the tools are for identifying talent and filtering out weasels. It is true: party trick Big O questions have low utility in most jobs. It is true: there is talent out there which sucks at Big-O questions. It is true: there are people who are good at little else than the party tricks. Nevertheless: those questions provide an objective judgement about a candidate. That objective judgement is valuable.

You spent several years doing a degree to make yourself employment-compatible. You will be able to achieve this standard in far less time, and there are cash rewards at the end of it. Accept that you will need to burn 1-2 months to develop this capability, and that you will feel awesome once you have.

Get /Cracking the Coding Interview/. I was not impressed by the object-oriented design chapter, but seek to master the other first-11 chapters. Take what you need from the remaining chapters. Develop a set of flashcards. Find problems online. Work intensively for at least two weeks but ideally a month. Then book some interviews at firms where you don't mind if you fail. Some of the FAANGs have awesome pre-interview study material. Try to get into process with a firm like that. Keep training on your flashcards and doing a few problems a day to keep in form. Expect to struggle with early interviews. Learn from those experiences. Revise what you made a mess of, keep working with your flashcards until you have mastered your weak areas. Now start applying at the firms where you want to succeed.

Re: Why do big companies ask unrealistic software engineering interview questions?

#60
post #13
post #6

Don't publish anymore on Medium, people!

Yeah, you're a software dev, spend an hour learning Hugo ;) (Take this with a grain of salt, I don't want to tell people what to do, I just stop reading your blogpost when it fades out and asks me to sign in...)

Or spend 10 minutes setting up a prose.sh account and just write Markdown as you already know it.
Post reply on HN