Hacker News new | ask | show | jobs
by jdiaz5513 3077 days ago
This makes me very, very sad.

I will never subject one of my potential hires to this nonsense. These concepts are valuable and academically interesting, for sure, but for the practical kind of engineering that's done at most companies it's simply not needed. Either that or it's already implemented in a library.

What a waste of time.

2 comments

I'm sympathetic to this viewpoint but looking at the cost/benefit for a Stanford student I think the benefit to studying for these interviews is clear - its a bit of a simplification, but for Facebook if you can do 3-6 problems over the course of 2 60 minute internship interviews you have the ability to get a $75k-$100k signing bonus if you convert to full time in addition to more shares over 4 years. Granted this depends on whether you're a high performer during the internship but I definitely understand why someone would make or take this class.
I recently got a promotion to management. I have different responsibilities, but I get paid more and have more influence over solutions to interesting engineering and technical problems. This role feels even more like what my engineer friends in real engineering disciplines do than my role as Lead did: leverage their education and experience to solve complex, large scale problems. These interviews are good at testing for jobs in software that have as an analog jobs in real engineering equivalent disciplines consisting of computing CRC integrals by hand all day.

What I'm saying is: unless these students just want to sit around repeating their DS&A course(s) over and over again the rest of their lives, this sort of interview, job, and prep course is counterproductive in the long term.

Careful. Software engineering is very much a real engineering discipline, and it is a major cultural failing to not recognize it as such.

Required viewing: https://www.youtube.com/watch?v=zDEpeWQHtFU

It should operate like a real engineering discipline. My point is in many ways it does not.
Thanks for sharing this +1
It's very tempting to say this. However, trying to find an alternative that is not equally or more gameable is very challenging.

Take home assignments are easy to cheat on and take a lot of time.

Asking questions about someone's experience is a great way to find someone who is a great conversationalist that can't code.

Asking someone to program at a computer in a limited amount of time falls victim to the same issues that the competitive programming, whiteboard interviews currently do.

Take home assignments are easy to cheat on? What does that mean (in the context of a take-home problem as an interview method)? Are candidates expected to derive solutions to coding or engineering problems themselves from first principles as their day to day? The answer is "no" almost without exception, even in serious research or hard core low level systems programming jobs.
Are candidates expected to derive solutions to coding or engineering problems themselves from first principles as their day to day?

Maybe not, but the ones who lack the ability to do so will also tend to be the coworker who constantly asks you and others inane questions, dragging down the team's productivity as a whole.

"Are candidates expected to derive solutions to coding or engineering problems themselves from first principles as their day to day?"

Does performance on these tasks correlate with performance on the job? Is it easy to measure this performance in interviews reliably? Then it's going to be used by companies.

The answer to both your questions is "no", and companies use them in spite of that.
Any studies that support the answer "no" for both questions?

Technical interview performance has ~0 correlation with performance on the job? I find it hard to believe. Is the mean performance on the job of a software engineer that fails to pass Google interviews as good as one that does? Why do most companies want to hire Google software engineers if that is the case?

As for my second question, it should have been "is it easi-er to measure this performance reliably than other skills that may be relevant"? It sounds like this would be hard to answer. But this kind of interview seems to be best suited for repeatable evaluation (although, of course, you do have the problem that people will prepare and bias the results, but I don't see how you can avoid that if you want a repeatable way to measure performance).

Finally, "and companies use them in spite of that". Any guesses why?

> Any studies that support the answer "no" for both questions?

Google had a study that has been linked to death around here which showed the scores hires received on their interviews didn't correlate to job performance ratings. There are of course biases and flaws in that study, but it underscores another separate point: studies should show they do correlate, not the other way around (prove a negative).

> Finally, "and companies use them in spite of that". Any guesses why?

Bandwagon effect, cargo cults, ego boosting/confirmation bias from applying a hazing ritual, laziness all come to mind.

It means that you have a friend or someone you pay solve the challenge and prep you very well on the solution. This isn't about creating the universe before you bake an apple pie, it's about preventing a mediocre software engineer who can understand a great solution, but has a hard time writing one from being assessed the same was as a great software engineer.
Okay, allowing for that, nothing this class teaches does the job of allowing you to assess someone as a great software engineer either.

In fact, if you want to hire a great software engineer, you can't do that reliably with any of these interview techniques. If your interview can be studied for, you aren't going to fight great software engineers. At best, you can find someone who will do the job.

A mediocre software engineer.

Take home assignments can take little time or a lot of time. Interviews that consist of round after round after round after a bunch of phone calls take a lot of time too. I actually prefer a home assignment of similar length.

I don't believe cheating is such a major concern. The applicant should be able to talk about their solution and all the choices they made if they actually wrote it and understand the solution.