Live data from Hacker News

I am sick of LeetCode-style interviews

nelson.cloud

511–520 of 625 posts

Re: I am sick of LeetCode-style interviews

#511
post #467

Earlier quoted context omitted.

How do you test whether they're problem solvers that also know how to code, without leet-code interviews?

Giving people real world problems and pairing with them on finding a solution.

I'm retired now, but I used a variant of this that worked well for me. In my experience, much of what we do as engineers is learn new tools and application domains and apply what we learn to solve problems. So I wanted to test how good a candidate is at leaning and whether they appear to enjoy it (good and enjoy often correlate).

We would work together at the whiteboard, with me teaching them the basics of our application domain and our internal distributed computation framework. Then there were a series of 5 increasingly difficult iterations we'd work through. First, do a simple calculation. Now there's a need for a more difficult computation. And an even harder one. Then explain that it needs to run over billions of log lines, and it's I/O bound, so let's make it faster. Finally, a problem that requires them to probe me deeply about the nature of the data and only needs a hand-wavy answer (calculate a median in a single pass with limited memory - not too bad once you extract from me that the samples are all integers between 0 and 500). To the candidate, this looked like iteration driven by evolving requirements, not 5 interview questions.

I mostly let them drive, but I jump in now and then to keep things on pace. And I would try to answer any question the same way I would as a teammate / mentor.

They don't need to get every problem right. The increasing difficulty is designed so that almost everyone gets something right and something wrong (What they do need to do is be able to solve problems collaboratively, extract learning from an eager mentor, and extrapolate from those learnings to solve problems. The best candidates start finding trade-offs across the application domain / tech tooling boundary that I haven't even brought up.

One of the downsides is that it takes a while to calibrate as an interviewer, and that calibration is not entirely transferrable across interviewers, as candidates will respond differently to different interviewers. I did this interview thousands of times (my record was 14 times in one day, and frequently 20+ times a week - we were scaling an org from ~50 engineers to over 1,000). I never stopped learning about signals I was seeing, but I was mostly calibrated after a few dozen candidates. Leet code calibration is much more transferrable, but what use is that if it's not measuring what matters?

One thing that I think leet code interviews get very wrong is that interviews involve two sides trying to evaluate each other. Wearing people down with leet code is not a good pitch for your work environment. Many candidates told me at the end of my interview that they were shocked at how much fun/educational an interview could be, and many hires said that this interview style was the reason they accepted our offer over more lucrative offers, because they felt they would learn more and have more fun with us.

Re: I am sick of LeetCode-style interviews

#512

Earlier quoted context omitted.

> I realized that day that I have every right to inspect all aspects of a company that I might work for, and that I don't really have to make compromises if I see something negative during the process. I think this is really contingent on your negotiating position. I've been unemployed for over a year. The lower my savings get, the less picky I can be about potential employers.

Hell. What area do you live? Are things that bad or were you just too picky?

I've been ~2 months from missing rent having to move my family into a van. At that level of desperation, you're willing to stomach a lot of non-ideal companies. If I didn't get that (as it turns out, terrible) programming job, my next step would have been to try to get a job stocking shelves at Home Depot.

Re: I am sick of LeetCode-style interviews

#513

Leetcode style interviews probably serve two functions: 1) A way to suppress wages and job mobility for SWE. Who wants to switch jobs when it means studying for a month or two? Also, if you get unlucky and some try hard drops an atomic LC hard bomb on you now you have an entire company you can no longer apply to for a year. 2) A way to mask bias in the process while claiming that it’s a fair process because everyone…

> there’s only a handful of companies that pay well with all due respect I believe this is about as far from the truth as it gets. I believe the issue is that people think they have to work at FAANGs in order to be paid REALLY well which is just nuts. I know many people making (very) high 6 figures working at places most have never heard of. instead of looking for FAANGs people should be looking at companies that hav…

> I know many people making (very) high 6 figures working at places most have never heard of

You know people making ~800-900k at places most people have never heard of? That is what "high 6 figures" means. I have to assume you mean more like ~$180-190k?

Re: I am sick of LeetCode-style interviews

#514

Earlier quoted context omitted.

> there’s only a handful of companies that pay well with all due respect I believe this is about as far from the truth as it gets. I believe the issue is that people think they have to work at FAANGs in order to be paid REALLY well which is just nuts. I know many people making (very) high 6 figures working at places most have never heard of. instead of looking for FAANGs people should be looking at companies that hav…

> I know many people making (very) high 6 figures working at places most have never heard of You know people making ~800-900k at places most people have never heard of? That is what "high 6 figures" means. I have to assume you mean more like ~$180-190k?

Not op, but FWIW, I know people who make high six figures (explicitly, $750k>) at companies that aren't household names or FAANG(ish) companies (or AI companies for that matter), though I also know my share of people that are at such companies that most people, or maybe just people here have heard of, that also make > $750k. Some of them aren't even software engineers! Most (all?) of them aren't paid that much on their W2 though and have lucked out with stock options/RSUs/related compensation (again, at non-FAANG companies, some private).

Not trying to brag that I have well-paid friends, though it might come across that way; just corroborating the fact that it's possible for late-career professionals to make that kind of money at non-FAANG companies.

Re: I am sick of LeetCode-style interviews

#515
post #329

Earlier quoted context omitted.

But the older you are, the more likely it is that you have built a family and have children and responsibilities outside of work. You cannot necessarily afford to spend time studying (problems untied to the real world) as much as someone younger I guess.

40 year old here. I don't think its strictly a time issue, its an energy/motivation issue. 40 minutes of practice a day for a month or two should be sufficient for someone to solve/go over dozens of Leetcode questions. We all, literally all, have that time to spare otherwise we wouldn't touch our phones or ever watch T.V and yet most of us do. But I don't disagree with you completely. I think the older you get, the m…

Yea, the older I get, the less willing I am to jump through hoops, supplicate and prostrate myself in front of a company I want to work for. At 22 years old, I would have thought nothing of studying 2 hours a day, 7 days a week, for 4 weeks to get a job. Now, no way. And I believe this is a common trait among employees my age.

So if a company designs an interview process that involves all this hoop jumping and whiteboard hazing, they are deliberately adding bias against older, more experienced candidates.

Re: I am sick of LeetCode-style interviews

#516
post #170

Earlier quoted context omitted.

Most interview processes I've been through (many, 15 year veteran) involve both the leetcode crap and at least one fit/culture/soft skills round.

The fit/culture/soft skills/ is actually a fall back to "where did you go to college and tell me about how good you are", which was the pre-leetcode standard. It is a downgrade in my opinion.

I've had good and bad soft skills interviews. They're harder to get right than tech interviews.

Re: I am sick of LeetCode-style interviews

#517

I understand the frustration, but at the end of the day I think they do serve a purpose. They're not great at that purpose, but they're good enough and they generally produce false negatives (smart people fail) rather than false positives (you hire an idiot). And this makes sense, because a false negative is low cost (maybe you spend 50% longer interviewing candidates) but a false positive is high cost (you hire an i…

The problem with Leetcode-style test nowadays is that there's too much cramming. Otherwise, leetcode-style interview has certain correlation with one's geekiness and raw talent. Just this week my team solved a long-tail performance issue by first building a simulation of a queuing system, and also built a customized Coffman–Graham algorithm to resolve the order of execution of a complex task graph. I would certainly appreciate that my team members just get it when someone mentions basic CS concepts like topological order in a graph or queuing theory.

Re: I am sick of LeetCode-style interviews

#518
post #507
post #265

I wish I could, as a candidate, ask leetcode-style questions to my interviewers, too. If I am to work with them, they should prove to me that they can pass them, right? Interviewers tend to forget that they are in a dominant position: they have nothing to lose, they are the ones who take the decision, and they are the ones who chose the questions. I have been in such interviews where I completely failed, but where I…

It is perfectly fine to ask anything from the interviewer. How long have they worked there? Did they have other jobs? Why did they leave? Is there anything specific that is great about this place? Why are you looking for employees? Did someone quit? Do you have a lot of meetings? Do you enjoy coding? Do you have anything interesting on github? Not specifically that but give it your own twist. If they are confused rem…

Except that the interviewer has the power to fail you if you put them in a bad position. It is fundamentally an asymmetrical situation where the interviewer is in a dominant position.

Re: I am sick of LeetCode-style interviews

#519
post #237

Earlier quoted context omitted.

At all the companies I’ve run we’ve used a simple whiteboard example for this reason. Don’t worry about typos; how does the person think. “Trick” questions are dumb, but you want to get an idea of if the candidate knows their stuff (and let the candidate know what we’re like — interviewing is a sales process in both directions). If someone asks a question like “is it ok to modify the argument” (or says “I’ll assume I…

Offtopic, but there's an interesting parallel between making a mistake like that and AI hallucination. In a human, that behavior is a positive signal, but for many people, that same behavior is proof of how LLMs are just a toy that will never rival human intelligence.

The difference is that an LLM isn't very good at saying "I'm a fucking idiot" and changing it when asked to double-check (unless you handhold it in the direction of the exact error it's meant to be looking for). Humans recognize their own hallucinations. There's not really any promising work towards getting AI to do the same.

Re: I am sick of LeetCode-style interviews

#520

Earlier quoted context omitted.

It'd be like interviewing a chef and you give them twigs and a flint rock to roll their own stove. I don't get what these tests are trying to show. Breadth? Depth? There's other ways. Give some complicated code that touches a bunch of things and have them work with that.

From my interview at facebook some four years ago, I am inclined to believe they disable intelisense so the candidates do not get tangled up in the minutiae of language syntax, function arguments, etc. and instead focus on the algorithm they are trying to write.

Except you get dinged on your performance if your code doesn't run once the interviewer has a chance to test it after the interview. And getting dinged generally means rejection in today's economy.
Post reply on HN