12 ms·
It always blows my mind how most interview in our field. When I first started in tech I was afraid to talk about not knowing leetcode to my peers. 15 years in a
by elb0w 5y ago
It always blows my mind how most interview in our field. When I first started in tech I was afraid to talk about not knowing leetcode to my peers. 15 years in and I now can confidently say I’ve yet to meet someone who thinks these are a valid metric.
Why do we make this the gate keeper to our industry when we know (except for the very specific roles) we will rarely need leet code type problems. When we do we just google them.
So silly to me.
- Aperocky 5y ago> a valid metric Not a great metric, but is there a replacement? Not everyone has github side projects to see how their code actually looks.
- voakbasda 5y agoSomebody here on HN recently shared the notion that leetcode tests are a legal way to discriminate by age or lifestyle, as older and well-rounded developers do not have the time or inclination to grind on such things.
- tofurocks 5y agoI don't understand what you mean here - would a company not want a well rounded developer ?
- scollet 5y agoHarder to exploit experience.
- tclancy 5y agoWe are expensive, tend to tell the younger devs to tell each other their salaries and not put up with bad management.
- lolinder 5y agoThe large companies don't need tens of thousands of system architects. They need tens of thousands of coders who can do what they're told on small parts of a system without fussing too much about the bigger picture. I think that's what OP is referring to—leetcode filters for young developers who don't need to understand all the reasons why they're doing what they're doing.
- a10c 5y agoWhy would a well rounded senior developer be interviewing for a role that requires a code monkey?
- kodah 5y agoNo job is ever phrased as needing a code-monkey and no one wants to think of themselves as a primate doing a very specific task.
- jokethrowaway 5y agoWhy would you put out ads for senior engineers when you'll make them perform code monkey tasks?
- hiptobecubic 5y agoEvery job has random overhead and your productivity is boosted quite a lot by already being familiar with some random bullshit problem like "don't configure your test environment this way or you'll run out of file handles after a day or two." Hiring more experienced people means fewer delays due to issues like that, even for boring "code-monkey" work.
- throwaway_merig 5y agoThey are convenient and standardized ways of testing. These "legal ways to discriminate" that companies come up with are nonsense, that's not what is happening.
- chrismv48 5y agoThis doesn't make sense to me. I work in a FAANG and we are desperate to hire senior engineers and it wouldn't make any sense for us to turn our nose up at older candidates.
- IThoughtYouGNU 5y agoI believe this hypothesis.
- throwaway894345 5y agoSeems like this could cut either way. Yeah, older people are more likely to have other priorities, but they’re also more likely to be financially secure and thus able to trade money for time to study. Also, they’re more likely to have gained time management/prioritization skills and discipline that they could apply toward studying. Ultimately it seems like arguing that older people lack time or inclination depends on ageist stereotypes.
- deleted 5y ago[deleted]
- foldr 5y agoAnecdotally, I am one of the older people in our dev team, and also once of the only people who cares even slightly about big O. I’m talking simple stuff, like knowing whether indexing a given list data type is constant time or O(n). To be fair, it’s not particularly relevant to what we do.
- ericbarrett 5y agoI think asking a candidate some basic big-O notation questions in an interview is great. Asking a DevOps candidate if a search algorithm developed and published in 2018 is O(n log(n)) or O(n log(n) K^(log n)), and then dinging them for not getting a perfectly correct answer, is over the top the kind of stuff that's used for age discrimination. Not because the young candidate will know it, but rather they will be excused for "almost getting it" and "having a good attitude" etc. in the hiring committee.
- nosianu 5y agoI think the argument is that more experienced people are less willing to do useless things just because somebody wants them to. I could never go back to university for that reason - studying, fine, I did a ton of courses on edX and Coursera, but I pick what interests me and a lot of test problems you are given (at least in my experience, at university and later online) too often are more about understanding the intent of the person creating the problem rather than anything useful. I could also never go back to the army (Germany, mandatory service, battle tank mechanic) and take commands from some guy who just wants to posture. I'm not any less willing to study than I was at university - but now I refuse to do what I think is useless or meaningless. Studying for tests is high on that anti-list. Not all tests, I had no issues with tests I took for things that needed certification, e.g. sailing or for the pilot license, but that stuff was useful in practice and not nearly as over the top because those tests were not designed to "weed out weaklings". EDIT: An anecdote for that last phrase After writing the comment I got curious and googled that exact phrase. I found this in https://en.wikipedia.org/wiki/William_Smythe_(physicist) https://en.wikipedia.org/wiki/William_Smythe_(physicist) > He authored a textbook on electromagnetism called Static and Dynamic Electricity, which was a widely used reference in the field during the 20th century. His electromagnetism course was modeled after the Cambridge Mathematical Tripos examinations and designed to "weed out weaklings." Smythe's course was so infamous that future Nobel Prize in Economics laureate Vernon Smith switched to electrical engineering from physics to avoid it.
- hn_throwaway_99 5y agoAs a successful developer well past middle age, I find this to be nonsense. The most common complaint I hear around this is "yeah, that discriminates against people who don't have time to grind to do the preparation." Why is it weird that people should spend time preparing for ask for a new job? I mean, ask an orchestra musician how much time they put into preparing for auditions, or how much time many degreed professionals put into passing a certification (e.g. the bar exam or medical boards). If you don't want to spend time preparing for job interviews, then fine, don't. But don't claim "discrimination" when there are those of us willing to sacrifice to put in the hours to prepare.
- lelanthran 5y ago> how much time many degreed professionals put into passing a certification (e.g. the bar exam or medical boards). They only do it once, though, not for every single interview.
- nhoughto 5y agoWas going to disagree but ended up coming around to the argument. I guess the difference is at a certain point preparation turns into a wasteful arms race, it’s not just a reasonable amount of effort put into your next gig but too much effort on things that don’t really represent real day to day / reality. Not sure where the line is, but there is definitely waste and it definitely favors those with spare time. Does seem like there is a growing movement to explicitly not do leetcode style reviews at many places which is good.
- tuyiown 5y ago> ask an orchestra musician how much time they put into preparing for auditions Training is basically the main work performer has to do to earn his life, and all training is valuable. You could compare with professional athlete and see how it’s absurd. > If you don't want to spend time preparing for job interviews, then fine, don't. The idea is that you have to understand the process. If you don’t see the point of certain exercise, you search for a rationalization, and discrimination looks like a good one. Also, the discrimination is not against people that won’t train for interview, but to give a bias to people that don’t evaluate returns on their invested time
- ur-whale 5y ago> a legal way to discriminate Interviews are by definition a legal way to discriminate.
- devoutsalsa 5y agoThis is probably a horrible strategy, but… If I ever do an on-site interview again, I’ve given thought to just bringing in a six pack of beer. If I get any bullshit questions, I break out the beer and say “how about we pretend that I did a good job on this question and talk shop about what you really need here, because that’s what I’d like to talk about.”
- dominotw 5y ago> I’ve yet to meet someone who thinks these are a valid metric. It is a valid metric. It screens for "overachieving" types who have the will power to power through unpleasant drudgery for a pot of gold in the end. If they really want those kinds of people who am i say its 'silly'.
- akshat_h 5y agoSo why do we ask them? AFAIK, it is engineers asking these questions and also criticizing the same metric. I think it is a case of this being the least worst option.
- dannyw 5y agoAt some point in your career, you have the ability to simply reject leetcode-like tests. Just politely decline.
- neilv 5y agoIs this the point in your career when you have so much money that you don't actually need a job?
- vitaflo 5y agoI’ve been a dev for over 20 years and have never had to do leetcode to get a job. You either find a place that doesn’t require it (more places than you think) or rely on your network to get jobs (which is probably what OP is referring to). No I won’t get a job at a FAANG this way, but I’m not particularly fond of megacorps.
- me_me_mu_mu 5y agoI mean how much money is enough money? You have FAANG tier people crying about TC - at some point it becomes clear that's their whole identity. Maybe they're just sad to be stuck in horrible cities (I'm also in one of them lmao) where no amount of TC buys them peace and happiness. It is pretty cringey, and honestly sad. I've been to so many meetups which basically turn into grieving sessions for highly paid engineers to cry about how their friend got an offer for xx amount while they make 6x the average US person in a year.
- hiptobecubic 5y agoAnd you have people making 6x less than you working at different jobs than yours. These kinds of complaints really lack perspective imo. Getting paid less at work is the same as over paying when buying something. Would you call it cringey if someone doesn't want to pay 30% more than all their neighbors for their house? They can "probably" afford it, can't they? Just be happy you have a house at all, right? What's a few dollars anyway?
- 5y ago
- gzer0 5y agoThe issue is the sheer number of fradulent and stuffed credentials people have begun using, and applying, en masse to job positions. To be clear, I dislike the current way interviewing is, but do you have a better solution to screen out 7,000 applicants? The vast majority will be knocked out by the leetcode style interview, and sure, some brilliant minds might fail because they can't remember linked lists in the moment, but atleast you screened down from 7,000 -> 70. If there is a better way, we'd all love to know. I am prepared for this to be voted down, but I am genuinely wondering the answer to this.
- badlucklottery 5y agoYeah, having an entire day of 4-5 leetcode-esque interviews seems excessive (looking at you Google) but having none also seems irresponsible IME (looking at you government contractors). I've been in organizations that were spawned by both of the above extremes. The former is definitely more pleasant to work in (everyone is at least competent) even if the interview was much less pleasant to do. I do feel like more orgs should try to target the middle ground instead of just aping Google and going ham on the leetcode shit.
- ipnon 5y agoI think the distinction to be made is between the process of finding the best out of 7,000 and finding someone sufficient out 7,000. The first is surely extremely expensive for companies. The second can be done in a week or two. I think the anecdotal evidence shows though that no company can accurately do the first, and the gamification of this process is a deeply researched topic, so it's likely that a company that believes they're accomplishing the first is really doing the second in practice, all the while spending unnecessary money and time, and deluding themself into thinking they found the needle in the haystack. My belief is that if you aren't doing Ph.D. level research, all you need to do is get the candidate to prove they can write themselves out of a bag with React/Python. Anything else is overkill, and a real cost loss to the business in terms of money and time. I will admit that for most businesses there will be times to do the first, and time to do the second. But I imagine this distribution is something like 20/80, whereas most companies are doing 80/20. Coding is hard, but so is marketing, accounting, management ... But are your marketing candidates being put through the ringer too? I suspect software engineers are being uniquely hazed. Peace & Love
- sockgrant 5y agoI’ve heard plenty of horror stories about someone being hired that couldn’t write simple code. It’s easy to study leet code, and it’s relevant because it shows the interviewer you can write code. I’ve had non-leet code interviews, like write some feature in 60minutes. It was fine. It tests code and knowledge as opposed to just algorithms and tricks. I dunno I’ve always felt that the people who can’t leet code are the ones that complain about it. The ones that can just spend a bit of time to practice and ace the interview.
- vmception 5y ago> I dunno I’ve always felt that the people who can’t leet code are the ones that complain about it. You mean the ones that randomly receive a random problem that they hadn't memorized before.
- sockgrant 5y agoIf you’re struggling I don’t think you should try to memorize leet code problems, you should try to understand how to apply algorithms.
- skydhash 5y agoWe know how to apply them, it just that algorithms are not fit all solutions for most type of problems you encounter in the real world. I had to write a frequency analysis code. What I did was search for existing methods, found a paper that provides a mathematical procedure, then convert it to code. The data structures came directly from the OS and thankfully, there were no need to convert them to something else. I'd say a lot of us learn about algorithms and data structures early in their career. But most of them are guidelines, not rules. So, you just remember how to google for them, not learning specific ones by heart. No one has ever told me: You need to work on this string manipulation and be done within 30mns.
- sockgrant 5y agoThere’s probably better code writing interviews to be conducted, but I think writing code in an interview is important. I’ve conducted many interviews in C where the candidate has years of C but doesn’t know the stack from the heap. So I dunno, it’s not fun doing the gimmicky leet code questions but it definitely filters candidates. I think people in this thread take them for granted… many candidates struggle with them. The ones that think they’re easy and you just gotta study a little bit — they’re honestly probably pretty smart.
- sergiotapia 5y agoWhen companies like Facebook get thousands of applicants per job there has to be _some_ way to unceremoniously cull the herd. Leetcode is it. I've interviewed at a lot of other places and it's mostly take-home assignments or just talking about past projects or my open source projects. I've never had to do leetcode for an interview in 14 years of working as a software engineer.
- kache_ 5y agothing is, it's really not that hard to get good at so whatever? (especially if you have a CS degree)
- spookthesunset 5y agoGotta keep the gate somehow. You wanna pull in the big bucks like everybody else on the team? Well? Study those stupid leetcode questions and suffer a day long interview loop first. It’s hazing. Nothing more. That being said I’d rather work for a shop that had at least some code tests. I’ve worked in places with none and the code quality is about as shifty as you’d expect.
- MichaelMoser123 5y agoThe thought crossed my mind, that they are doing it on purpose: to make the whole experience of switching jobs as unpleasant and traumatic as possible, so that people will stick to their jobs. However a conspiracy is highly unlikely, given that there are so many players involved. More realistic explanation: they try to make an 'American Idol' like process, this gives them the feeling of having chosen 'the best'. Now it probably takes some standardized task to do that kind of competition, as it is necessary to maintain the claim of having an objective hiring process. I was once told, that in the olden days there was a different kind of hiring process (that was not about programming jobs, actually, they didn't have that job at the time). It would go as following: the owner would invite the candidate to join the crew for lunch, if the candidate eats a lot, then he would count as a good worker. Actually that would make a good test for 'culture fit'... BTW, the article has a link to a free course on hiring practices, thanks for the link! https://course.jobsearch.dev/01_introductions/01_course_intro.html https://course.jobsearch.dev/01_introductions/01_course_intr...
- deckard1 5y ago> make the whole experience of switching jobs as unpleasant and traumatic as possible, so that people will stick to their jobs. However a conspiracy is highly unlikely I've thought this too. Apple, Google, Intel, Adobe, Intuit, Pixar, and Lucasfilm were hit with antitrust litigation starting around 2010 because they were all involved in colluding to reduce the ability of devs to switch jobs. Since then we've only seen the rise of leetcode style interviews. We're way way past the days of tree traversing and FizzBuzz. We're asking candidates to recite Dijkstra's but pretend they've never seen it before. It's just way more convenient for tech companies if people don't leave in the first place. I know I've stayed at my job much longer than I should because I hate interviews. > as it is necessary to maintain the claim of having an objective hiring process Yeah no one wants to admit they don't know what they are doing. It's bad for FAANG myth-making. A company the size of Google or Facebook is never not hiring. They are a big boat that can't just stop moving like that. They have a constant churn rate, the need to keep interviewers sharp, and a certain target rate they need to hit of applicants in, new employees out. All the process between the in side and out side is Scientology. It's just complete fabricated cultish nonsense. The owners of LeetCode must be enjoying it though.
- shroompasta 5y agothe reason why FAANG/M companies do ds/algo interviews is because they get an ocean of applicants and it's necessary for these questions to be the immediate filter. Most startups I have applied to previously rarely asked ds/algo interview questions. It's not that they want to, it's that they have to.
- em500 5y agoIndeed, all those complainers about the process should maybe try to answer this as their first business case interview question: You have 10 dev positions in your team. You receive 5000 applications, where 3000 look like a suitable match based on the CV. How do you proceed?
- bitwize 5y agoLeetcode is a first-order screen to find people of base-level minimum intelligence and problem solving ability. It's not a quiz of actual problems you'll solve on the job, it's a way to screen out the wannabes who couldn't program their way out of a wet paper bag. Grinding leetcode also shows you've got grit, and are willing to prepare for a task and do what it takes to succeed. Grind leetcode, show the companies that you can meet their minimum threshold of cognitive and executive capability for entry into their tech department... or don't work for them, it's that simple.
- ur-whale 5y ago> Why do we make <leetcode> the gate keeper to our industry This is not about having to use leetcode type problems in day to day work. Knowing about those is about a state of mind and a culture: that you are passionate about tech and have what it takes intellectually to dig very deep into it and not just another drone that learnt Java just because you knew it would give you a decent-paying job.
- gorgoiler 5y agoThe most amazingly productive engineers I’ve worked with have all been incredible leetcoders. You’re right though — I might as well be saying they were also incredible bakers or skaters. If those were also high signal identifiers of good devs then we’d be kneading dough while doing ollies in the interview rooms. What irks our industry is that there are plenty of good developers out there that produce quality day to day plumbing and integration work that suck at leetcode. That’s fine. We should hire them too, but if you are FAANG you don’t need to if you have post grad leetcoders knocking down your door every day of the week to supplement your already burgeoning cadre of sensible staff engineers.
- 62951413 5y agoI have never applied to FAANG for exactly this reason. But I have seen this style of interviews creeping up to dominate over the last decade. At least in the Bay Area. My impression is that European interviews are more sane (no dynamic programming, more take home coding challenges).
- lordnacho 5y agoImagine a job, say "Professional Football Player", where the only criterion for getting the job was "In three weeks, show us your six-pack, do 20 chin-ups, and do the 40M sprint in under 6s". You don't have to dribble the ball, you don't have to answer a quiz about the rules of the game, you don't have to tackle anyone, you don't have to kick the ball, you don't have to be good at positioning yourself. Clearly the test seems pretty odd as a way to pick players. But it has benefits as well. The expectations are clear. People who can't do it won't try. People who are in the ballpark and pass will feel special.