It is humiliating to have to do LeetCode grinding for

(twitter.com)

30 points | by bilsbie 7 months ago ago

132 comments

  • instig007 7 months ago

    > I have written more code than most people

    If by most people you mean non-programmers, then maybe. Otherwise it sounds like a whining of a B-player who just realized they've never had skills sufficient for NFL.

    The fact of the matter is the better you're in understanding CS and the underlying mathematical domains, the easier the leetcode questions get, it always has been and always will be. And contrary to most beliefs, you don't have to memorize individual problems. You learn the domains of problems and solve them with the same repeating methods. But most people just prefer spending their time on infortainment and being presumptious on Twitter, than actually learning stuff.

    • robenkleene 7 months ago

      > But most people just prefer spending their time on infortainment and being presumptious on Twitter, than actually learning stuff.

      Or writing useful software? Open source is a thing, as are independent commercial software projects.

      The tragedy of Leetcode is means the best financial ROI for programmers in aggregate is essentially play programmer Soduko instead of spending their time creating novel and useful software.

      • 7 months ago
        [deleted]
        • 7 months ago
          [deleted]
    • mettamage 7 months ago

      Are you up for coaching? Sounds like you'd be a fun stern coach (well I think someone stern is fun).

      Just for like 15 to 30 min. per week, nothing much. My email is in my profile.

      About me in short:

      2 bachelors, 2 masters (bsc: psych, CS, msc: game-design, CS).

      Software engineer for 4 years

      Teacher (programming) for 2 years

      300 leetcode questions done (not sure if I'm doing it for interview prep or fun or both, don't need to go the leetcode route anymore but I find it a rewarding endeavor)

      I sometimes expand my math capabilities for funzies

      My email is in my profile

    • keb_ 7 months ago

      > But most people just prefer spending their time on infortainment and being presumptious on Twitter, than actually learning stuff.

      Yeah that or wasting their time working on open-source or side projects, which typically has a poor return on investment. One of the biggest things I learned after years of trying to work in open-source is that it is not worth it (financially). The employers who pay the best salaries do not care unless the project you work on is very closely related. Even then, you are way, way better off grinding Leetcode instead.

      • 7 months ago
        [deleted]
  • seanhunter 7 months ago

    If you think something you have to do in an interview is “humiliating” when all they’re asking you to do is demonstrate some skill on a whiteboard you have some self-reflection to do. I don’t personally think leetcode is that great for interviews but candidates who act like it’s above them to figure out problems etc have a serious problem. In other fields this is not only completely normal but absolutely something people embrace. I have been in music masterclasses and heard absolutely world famous musicians playing basic scales to demonstrate something, in maths solving basic problems is absolutely something people will do all the time[1]. My dad was a chemical engineer and he was always happy to get a pen and pad out and solve some problem

    It’s completely ridiculous to think you’re being humiliated by being asked to solve some algorithm question or other on a whiteboard and if you think that, I implore you to change your perspective. You want a job - you should be prepared to demonstrate that you’re prepared to do things that people ask you to do.

    [1] Fields medal winner James Maynard doing first year linear algebra problems on a whiteboard https://youtu.be/100Im_72xl4?si=id2Y1SwvM2ZRBCW4

    • marcosdumay 7 months ago

      There's possibly some worldview mismatch on your comment, because leetcode isn't "basic scales" programming for any specialty.

      It's much closer to expect your world famous violin player to sing on the stage than it is to expect them to play scales on the violin.

      But then, maybe not. Some people call all kinds of random exercises by "leetcode". The author may be one of those, I don't know if anybody can know this.

      • paxys 7 months ago

        Basic data structures and algorithms knowledge is a base skill that will translate to better success in any software job. Yes you may not be coding graphs in your day job (although you might - I have personally done it before), but someone who can grasp stuff like BFS vs DFS and Dijkstra's algorithm will absolutely be better at the job than someone who comes in and says "idk who cares, I'll just use a library".

        • marcosdumay 7 months ago

          > BFS vs DFS

          Yet, on the real world the answer is always one of "either" or "neither".

          Anyway, most leetcode aren't of the type of "a widely applicable algorithm solves this". People only know the algorithms that apply to them because they studied those problems specifically.

          And notice that one of the algorithms on your post is named after a researcher from the 80s. That's some 40 years after computer science became a thing. That's how long it took the entire humanity for learning it without anybody specifically telling it to them.

          • HDThoreaun 7 months ago

            Absolutely not lmao. Many problems are more efficiently solved with bfs vs dfs or vice versa. If the problem requires you to reach a leaf dfs is usually better

            • marcosdumay 7 months ago

              What? Neither of them are efficient in any practical sense.

        • raydev 7 months ago

          There's an enormous gap between knowing when to use those tools and creating a solution with those tools when you already have the job, vs banging out a perfect solution in 20-40 minutes with someone looking over your shoulder, who is also deciding whether you deserve a paycheck based on those 20 minutes.

        • foogazi 7 months ago

          Once I started interview practice on leetcode I began to see algorithms & DS in everyday coding tasks

        • uberman 7 months ago

          BFS? Really, there are libraries for that and I would hire a kid who timidly used one as they could not remember how to implement it over someone who confidently introduced and off by one bug because they thought they knew how to implement it without references.

          • foooorsyth 7 months ago

            BFS/DFS is astonishingly simple. It’s like 10 lines of code. And it’s almost always done (in practice) with a custom type where you work your way through custom fields pointing to the next vertex, so it’s not an algorithm / structure that lends itself well to standard libraries. It’s not like a self-balancing tree (which is actually a bug-prone, large implementation that you should just let the standard lib handle).

            If you can’t trust the people sitting next to you implement a simple graph traversal without bugs, then your organization has a professional standards problem.

    • paxys 7 months ago

      Not to mention that the interview process in a lot of fields without any objective hiring criteria consists of the hiring manager being friends with your uncle or your grandparents going to the same country club as the CEO. I'll take what we have, thanks.

    • praptak 7 months ago

      Author's point is not that it's too simple but that it is not relevant. It's not similar to asking a mathematician to do first year math problems, it's asking them to, dunno, remember obscure regulations on accounting.

      • zeroCalories 7 months ago

        You got it backwards. It's like asking an accountant to do basic math. I don't trust you to handle my money if you can't even do that.

    • remram 7 months ago

      This tweet is about "grinding", eg the time-consuming prep work before interviews. I think.

      • 11101010001100 7 months ago

        I'm a prof. I grind when I prepare a lecture. It's part of the job.

        • uberman 7 months ago

          Grind? Really? I work in higher ed and I teach. Prepping even a new course is not grinding. Teaching a course where you are professor of record is certainly not grinding unless you dont know the topic at all. If that is the case though you should not be lecturing for this class.

          The only legit excuse for grinding here is if you did not do any prep.

          Doing your job even with a 4/4 load is not grinding.

          Research proposals and research projects might require grinding. Prepping lectures no way.

          • 11101010001100 7 months ago

            As I said prep is grinding.

          • bdangubic 7 months ago

            I hope neither I nor anyone I care about ever ends up in any class you teach…

            • remram 7 months ago

              Unnecessary attack. You disagree on what "grind" refers to and that's fine, but your comment was personal and mean.

              • bdangubic 7 months ago

                really? how about if I wrote this? not personal or mean, yes?

                “Teaching a course where you are professor of record is certainly not grinding unless you dont know the topic at all.”

                • bdangubic 7 months ago

                  the absolute best professors on this planet are the grinders… if you are not, you are just coasting on something you think you know but you really don’t (probably re-using powerpoint presentations you created in 2012…)

                  • sigbottle 7 months ago

                    For example, from the perspective of an algorithms junkie, there's literally 0 way an algorithms professor with algorithms research published would forget any of the basic algorithms they teach in an introduction to algorithms class.

                    Now what may happen is forgetting what it's like to be a naive, 18 year old freshman in college, and not somebody embroiled in academia for the past few decades.

                    But the audacity to suggest that it's even remotely within the norm for professors to not know their own material... wow.

                  • uberman 7 months ago

                    Clearly I touched a nerve. Perhaps you view grinding as "doing your job". I happen to have a different definition.

                    Originating a class can be a slog and originating two to lecture next term would be a grind. If you are not professor of record and thus likely did not originate the class then your assignments and reading, hell the entire course is likely layed out for you. Teaching a section of a course you originated or that someone else originated is likely 80% of the teaching load. Familiarizing yourself with this material so you can effectively teach it is doing your job, not grinding.

                    I'm not sure why you feel the need to suggest I am a crappy teacher or that I lecture from notes more than a decade old. Knowing how accreditation works, how courses are originated, and how sections of thoses courses are taught at r1 institutions, I can only conclude you are ignorant as to how these things actually work.

                    As a real world example, there are many great online courses from places like MIT and Stanford. Hell you can sometimes even get these online lectures for free, the same material covered by those institutions as part of their degree programs.

                    How much grinding does it take for a lecturer to to proctor such a class, particularly given that they also likely get FAs to do labs and grading?

                    If you attended or work at a college where professors grind out new classes every term then that institution is going to have an accreditation and/or tenure issue as "special topics" dont make a degree program.

      • foooorsyth 7 months ago

        All other serious endeavors require endless “grinding”. Imagine a hockey player being annoyed about being asked to tryout. Imagine whining about having to practice their skating or shooting.

        Compared to many other things, software engineering requires astonishingly low prep. Your average high school baseball player has spent more time in the batting cage to earn a varsity letter than the median SF SWE has spent on leetcode

        • piva00 7 months ago

          Batting in the batting cage is much closer to skills required to perform as a batter than Leetcode problems are to perform at most jobs as a software engineer.

          Is there some overlap of Leetcode problems and real world problem solving? Yeah, a little but most of my time is not solving yet another algorithmic problem but thinking about the problem from a business/product perspective, decomposing it, uncovering and understanding requirements, designing code that will be easily read and modifiable by people in the future, etc. 95+% of my time on the job is not trying to figure out what's the best way to find the number of inversions of a red-black tree.

          There are jobs that hard and deep knowledge of algorithms is important, for those please go ahead and keep testing people on it. The vast majority of the jobs requiring people to jump through Leetcode hoops is not that, and a lot of those interviews are not testing for what is actually needed to perform the job well.

    • bArray 7 months ago

      > If you think something you have to do in an interview is “humiliating” when all they’re asking you to do is demonstrate some skill on a whiteboard you have some self-reflection to do.

      I don't know about the author, but some places are asking for a coding exam that takes hours or days. The process of application itself can be a long and complex ordeal where they suddenly stop responding, only to find out weeks later only after you chase them that they already had somebody for the part but wasted your time to make it seem like they went through a proper process. Then if you get the job, you move to the area and sign up to a 6-12 month rent agreement when the probation period is 3 months or less where they can dismiss for any reason.

      I think more can be done to even up the relationship. The more the employer demands as part of their process for hiring, the more they should provide the person going through these hoops. The risk is really quite unbalanced.

      I know excellent engineers essentially stuck where they work because they cannot afford to miss the mortgage payments. Yes they can get interviews all day long, but the risk of jumping to a different ship is immense.

    • mettamage 7 months ago

      I like leetcode, and I think the practice is defensible. To be fair, I've made a lot of mental loops to get there.

      However, I'm also sympathetic to the "leetcode is useless because you don't do it in your day to day" camp.

      I used to lean more towards my mental loop side. But nowadays there has been a big question due to a recent job interview I did.

      I recently applied to become a data analyst at a F500 company. It seemed fun and the pay was marginally better than what my software engineering career has been (as I'm not from the US).

      I remember that when I applied, I didn't even know what a data analyst was. However, they gave me a technical assessment and I aced it.

      Zero prep

      Completely aced it

      They told me that their work sample round was indicative of the job, so if I could do that, then according to them: I could do the job. It took me 4 hours in total.

      Of course, there are tech companies that do this. However, I was a bit stunned that this was so easy. To be fair, getting in wasn't easy as I applied to some data analyst positions for fun to other companies and they all mentioned "you have 0 years of experience in this role". So I was lucky in that sense, and I was also lucky that they were willing to look at the person as opposed to treating me as a number.

      There have been 2 tech interviews so far that went the same way. With that I mean: 0 prep, just using your skills and you got in based on those skills.

      Look, I like leetcode, but after my recent experience I'm just not sure if it's the best way to assess talent. One could make the argument that it's an easier role? But I don't think it is, I find CRUD relatively easy too which has been most of my job. Though, there was this one week where my leetcode skills really helped as the company had a genuine novel leetcode hard style type of question.

      • foogazi 7 months ago

        Did you get the Data Analyst job ?

    • wayoverthecloud 7 months ago

      Agree with everything but I don't know think James Maynard was actually being interviewed during that video.

      • seanhunter 7 months ago

        True although I get the feeling from James Maynard that he’s the sort of person you would almost have to physically restrain if he was in a room with a whiteboard in it and you didn’t want him to solve some problem on it.

    • uberman 7 months ago

      Demonstrating core competency is one thing, leetcode is typically not that though.

    • ionwake 7 months ago

      I completely disagree with you seanhunter ( and everyone else mostly) so please dont take offence I could be wrong but the following is my opinion.

      I am thankful most companies are gatekept by people who think like you as I feel it gives me and my company an advantage. In the UK over the course of nearly 20 years I was asked by random interviews to do "fizzbuzz" which I always refused to do out of principle.

      The problem being anyone who doesn't know how to code could just memorize it.

      My problem was it wasn't a "starter" question it was the equivalent of asking me if I wear shoes on a daily basis and if so, to demonstrate it in an extremely concise way.

      I felt it was offensive regarding my ability, indicative of narrow minded testing protocols for candidates, and a lack of respect for why they had chosen to interview me as it meant they probably were unaware of my portfolio, which many companies were.

      I am not saying this to convince anyone on HN they are a bad idea as most of them rely on codemonkey exercises like these to prove their worth straight out of college, I am just saying I think they are idiotic.

      • seanhunter 7 months ago

        I’m not taking offense but don’t think for a moment that you know me. I don’t “gatekeep” and don’t in fact ask leetcode questions when I interview. But I have been a software engineer for 20+ years in every possible role from a basic IC up to CTO, been part of small teams, run huge teams been a cog in a massive machine to being “the guy who has to do everything” and I am perfectly happy to do leetcode in an interview and wouldn’t consider it “humiliating” and what I’m saying here is if you think it’s offensive you should adjust your perspective. I personally don’t think it’s great signal in an interview for some of the reasons you say which is why I don’t ask these questions myself.

        • ionwake 7 months ago

          I don't think I said I know you. Cheers for your reply , maybe my perspective is wrong.

      • AnimalMuppet 7 months ago

        If I were given fizzbuzz as an interview question, I would say something like: "Sure, I'll do it. But I've got 40 years of experience, and I expect the rest of the interview questions to be on a bit different level."

      • zeroCalories 7 months ago

        Many people fail fizzbuzz. Most interview questions at big tech are not much harder than fizzbuzz. You are not qualified to be a software engineer if you can't write fizzbuzz after seeing it for the first time in your life.

        • paxys 7 months ago

          "Many people" is an understatement. In my experience 70%+ of applicants fail basic fizzbuzz or reverse a string level questions. If you think these questions are beneath you, good, you've just made my job easier as an interviewer.

          • ryandrake 7 months ago

            This was one of the most eye-opening truths of the industry revealed to me when I started interviewing candidates. There are so many software developers, even with long histories of well-known companies on their resume, who just cannot write code. Even Fizzbuzz. Even "write a for loop with an if statement" type problems. Under pressure or under no pressure. On a whiteboard or on a computer. This has been shockingly true about a pretty consistent percentage of candidates for every company I've worked with as an interviewer for 25 years.

            This is why we have leetcode and Fizzbuzz. There are simply too many phonies applying and counting on their charm and charisma to get them the job, which sometimes works when you don't make candidates actually demonstrate their skills.

          • esco27 7 months ago

            No, you’ve just optimized for a lazy metric. You’re filtering for people who can handle trivia under pressure, not necessarily good engineers.

            • paxys 7 months ago

              If you are applying for a job in the front office of an NBA franchise, and I ask you "which team did Michael Jordan play for?", answering with "this is a useless trivia question, it is beneath me, I can easily google it, how does it matter?" will mean you are not going any further in the interview. You can then complain about it online all you want, but that's how it is.

              Similarly, if I ask you "write a program in your language of choice that prints all even numbers from 1 to 100", you can either cry about it or take the 3 minutes and actually do it. If you can't, it's a pretty clear signal that you don't actually write code in your day job and aren't suited for this one.

            • NavinF 7 months ago

              Why would someone be under pressure when answering "basic fizzbuzz or reverse a string level questions"? Personally I like easy and quick warmup questions, they make me more calm

            • zeroCalories 7 months ago

              It's not trivia, it's basic problem solving skills of the trade.

        • esco27 7 months ago

          FizzBuzz trips people up for all kinds of reasons: fear of ‘gotcha’ questions, nerves, overthinking, or even feeling insulted by how basic it is. Sure, some fail because they can’t program—but passing doesn’t mean much either. It just means they’re good at FizzBuzz, not necessarily at solving real problems.

          • zeroCalories 7 months ago

            Sure, some qualified people fail simple problems. More likely the applicant failed because they didn't pay attention in school and made a career of copy-pasting stuff from stackoverflow(or AI these days).

  • bingohbangoh 7 months ago

    People really hate coding interviews but they now exist as a "stupid test."

    Academia has a problem with possibly fraudulent papers and grade inflation. It is inevitable that companies won't trust the papers and grades/degrees like they did in the past.

    • zeroCalories 7 months ago

      I trust a Harvard undergrad more than I trust a second or third tier grad student. It's so easy to shit out mediocre work and build accolades without actually being able to do anything these days.

  • tqi 7 months ago

    For one, the proposed alternative seems to boil down to "give me special treatment" which is not a great look. For another, there is no perfect screening process, only tradeoffs between throughput, accuracy, and cost. Finally, if you think this very common interviewing process is "humiliating" then you're going to absolutely hate the hour to hour of most jobs...

  • imbusy111 7 months ago

    Just to give some balance here, I'll state a seemingly unpopular opinion.

    Personally, I have not had issues doing complex coding questions in interviews, or at work. And it becomes clear pretty quickly on the job, when your co-worker has weak computer science fundamentals. Reasoning from first principles is a very powerful technique.

    • m_rpn 7 months ago

      The issue for me is that even if you have strong computer science fundamentals and lots of experience most of the time you won't be able to come up with an advanced optimized algorithm (that took years of research) on the spot, which is what is often required in these kind of interviews. Even if you manage the average kid that grinded leetcode for years will appear a better candidate than you, maybe he really is, but that's unlikely on the day-to-day job. In the end it's just about who grinds more, obviously if somebody is really weak on the basics it shows immediately without having to go through the hops, fizzbuzz is enough.

      • mettamage 7 months ago

        To be fair, while grinding shows opportunity of having enough time. It also shows determination and grit. I have determination and grit in other areas of life, but when it comes to leetcoding, I find it hard to have it.

        I find it much more easily to have grit when it comes to dating/romance. I already feel it, it's a few orders of magnitude higher, at least on an emotional level that is. The strong motivator there is the rebellious belief/thought of "I won't be ignored! I deserve love too!" (I think everyone does). It's a trauma (little t) response. I'm married nowadays because of that drive, I'm currently reading the 7 Principles To Make Marriage Work.

        But leetcode? In a good week, I do like 5 problems.

        • swat535 7 months ago

          You are just justifying pointless time wasting on Leetcode questions as "grit".. There is a world of difference between perusing deeper connections with a potential life-long partners than doing Leetcode..

          I mean if it works for you and you enjoy doing it, great but don't pretend it's for a higher purpose. It just sounds like Kool-Aid.

          We don't demand surgeons to grind Leetcode for their interviews, nor we ask lawyers to solve trick gotcha questions.

          Other industries recognize and value professional experience and are able to determine a candidate's quality with sane interview processes.

          • mettamage 7 months ago

            Partially agree, partially disagree. Won’t get into it.

            I enjoyed your comment though! It’s food for thought

      • singron 7 months ago

        People complain about having to reinvent major discoveries in interviews, but in my experience this is very rare. The overwhelming majority of coding questions are more advanced versions of fizzbuzz, which merely require reapplication of common techniques. It is very frustrating as an interviewer if nobody can solve your questions, so the questions used will evolve to things that the typical competent applicant usually solves.

    • keb_ 7 months ago

      To give some more balance, I've met coworkers who have strong CS fundamental skills and are Leetcode BEASTS, but are terrible engineers.

    • gumjafar 7 months ago

      To give some balance; I’ve worked with people strong in CS that suck as people and have no ability to help with product.

      Experience is not equally distributed given any context. Well rounded people overall have been the best to work with.

      Optimizing for a single variable is a very powerful technique of the stupid.

      • falcor84 7 months ago

        It's a bit of a strawman argument - I'm not aware of any company that hires purely based on leetcode results; they typically also include interviews focused on product/design skills and "culture fit".

        • raydev 7 months ago

          Sure, the FAANGs and other companies aren't exclusively hiring based on time-constrained leetcode performance, but they are extremely biased towards it.

          The coding sessions are pass/fail, you need to get to some type of solution that works. If you get most of the way there and were maybe just slow, it doesn't matter, you will not be hired.

          On the other hand, companies are very flexible on system design and background sessions.

          This lopsided process allows LC superstars to get through despite glaring deficiencies once they are involved in day-to-day work.

  • maeln 7 months ago

    Honestly, if you are Google, Meta, Netflix, etc, and/or pay largely above the market rate, fine, go for it. What I don't get is when start-up, who struggle to recruit, do the same.

    I have been on both side of the recruitment process. I wrote some technical tests. The thing is, it is very hard to evaluate someone level with synthetic test, and leetcode, a.k.a hope-you-know-the-right-algo-for-this-question, type of test are, in my experience, amongst the worse (especially if live-coded or timed).

    This type of test will filter out a lot of competent dev, because let's be honest, most dev don't need to be able to come up on the spot with a dynamic programming solution to a completely synthetic problem.

    And I also find that algorithmic / programming skill are often way less important for a SWE than good communication, transparency, the ability to learn, ... Unless you working on a product where performance is absolutely critical, I find that having a difficult technical test that is a go/no go, yield worst result.

    • mettamage 7 months ago

      What do you mean by good communication? I feel different fields mean different things with it. E.g. in the consulting world you need to be able to deal with people their emotions. In software engineering, I don't think I ever really experienced this. However, I did experience it as a teacher [1, 2].

      With software engineering I feel it's related to HN culture. Of course not everything, but a lot of it. Some things I can think of that software engineers would consider good communication is: (1) steelmanning arguments, (2) clear/logical communication and (3) concise, not long-winded. But often times, I don't hear/see anything about: (1) dealing with emotions or (2) the ability to reduce tension by being playful for example.

      How do you see this?

      [1] e.g. a student picking the wrong course and being utterly dejected and making the class toxic but it's not really her fault because the way this course was promoted was a bit too optimistic in its marketing.

      [2] A student thinking that they're not good enough and they start crying on the spot.

  • billy99k 7 months ago

    LeetCode and similar tests are why I got out of software development as a career. I was tired of jumping through hoops on interviews.

    • rblatz 7 months ago

      How often were you interviewing that LeetCode interviews made you switch careers?

      • billy99k 7 months ago

        It's not always the official 'LeetCode', but algorithm tests like it. It's clear that these tests are to filter out older tech employees, because most never had to take these when they were in college. I've also passed every test I was given, so it's not me being bitter that I don't have the required skills.

        It's a symptom of the ageism issue that is so prevalent in the software engineering world.

      • ponyous 7 months ago

        Anecdotally, in my 14-year career across 15+ jobs/contracts in the EU/UK, I was asked to do LeetCode only once.

      • beanjuiceII 7 months ago

        people will complain about everything

    • mettamage 7 months ago

      > Which career path did you choose instead?

      Thirding this (sandeep1998 and sidpatil were before me)

      I became a data analyst recently by the way. They say the field is oversaturated, but I don't think this is true if you're coming from a solid software engineering background.

    • sidpatil 7 months ago

      Which career path did you choose instead?

    • sandeep1998 7 months ago

      What did you switch to? (looking alternatives myself)

      • billy99k 7 months ago

        Cybersecurity. I'm on the offensive side. All tests I've taken have been relevant to the job.

        • syspec 7 months ago

          It's the kind of field where you can talk yourself up more easily

          • billy99k 7 months ago

            Huh? If you don't have the skillset, you won't get very far.

  • Aardwolf 7 months ago

    > I have written more code than most people and I still will be judged for not being able to solve a coding question

    Why would you fail it though if you have written more code than most people (assuming most people means most people in tech and not most people worldwide in general since most people are not software developers), and published in A* venues

    • herpdyderp 7 months ago

      I publish and maintain dozens of open source packages that are downloaded millions of times per year and I couldn’t off the top of my head implement a bubble sort. Because why the heck would I ever do that?

      The point is that LeetCode does not test the actual skill set of writing useful code, it tests how much you’ve grinded LeetCode.

      • 7 months ago
        [deleted]
      • syspec 7 months ago

        No one would ask you to implement bubble sort, or a specific algorithm.

        They would ask you to solve a problem

    • Spivak 7 months ago

      Because these kinds of questions are coding trivia and your ability to do them is a function of having seen them before. Having to study for an interview kinda defeats the point, no?

      I'm so glad I'm on the ops side where these kinds of games aren't common. At best you'll get some light Linux userspace trivia.

  • hellisothers 7 months ago

    I just finished several months of preparing for and doing (and failing) interviews, it was only adter i spent a month of Leetcode 8+ hrs a day that I started doing well and getting good offers. I also hated the game, I’ve been in software engineering over 20 years and was very resistant to this treatment but in the end I realized I’m not going to change the system but I am entirely capable of jumping through these hoops if I just try way too hard. My hack/advice for this is if you want to avoid it as much as possible look into mobile development, most mobile loops have little or no leetcode (except Meta and Google of course).

  • zero-sharp 7 months ago

    It's true. But acting like you're above the work also doesn't help you.

    • odyssey7 7 months ago

      Interviews are posturing, not work. The tweet explains all of the work that the candidate is proud to have done, and the disappointment at being judged in a posturing pageant instead.

      • zero-sharp 7 months ago

        If you're not already rich, my suggestion is to get used to the idea of passing purely formal tests. It's a really common part of life for everyone else. Sorry.

        • odyssey7 7 months ago

          Coexisting with the system is not the same thing as never questioning the world around you.

    • rob74 7 months ago

      Yes. You might think it's humiliating, but sometimes showing some humility (rather than tweeting something along the lines of "They want me to do the same type of interview like the peons? Pah, I'm too good for that!") might be in order...

    • pelorat 7 months ago

      When I went to interview for my first dev job (C++) all I had to say was; I know what a vtable is, I can use a profiler, debugger and I know assembly language. I was hired without having to write a single line of code.

      • hombre_fatal 7 months ago

        Heh, that's how the interview at my first job went at a small Ruby on Rails company.

        The lead developer asked me intermediate to advanced questions about Rails that you'd only know if you knew Rails. He asked me about impl details of a Rails projects on my Github. And I got the job.

        I never had an interview as pleasant as that since.

    • uberman 7 months ago

      They literally are above it.

  • yobbo 7 months ago

    The poster sees it like Hans Zimmer (https://www.imdb.com/list/ls066405124/) being asked to play scales on a piano as an audition for writing a movie score, and then being rejected for some mistake. Indeed, that would be humiliating.

    In reality, it is more like a football penalty shootout after a match has ended in a draw. There are too many (over?) qualified candidates, and coding interviews are more fair than choosing randomly.

  • orwin 7 months ago

    I think you have two different 'leetcode' interviews.

    The first one if 'write detailed leetcode to solve our slightly different fizzbuzz'

    The second is 'we have this specific issue, please leetcode a prototype that will solve it.do not enter in details and edgecases'

    The second one is IMHO way better than any other way to find language-agnostic Devs, that's why I'm not against some kinds of leetcode.

    • OkayPhysicist 7 months ago

      You missed the third type, "write detailed leetcode regurgitating an obscure algorithm for this problem set up to have a very specific answer".

      IMO, most complaints about leetcode are about that type. Nobody should need to "grind" to pass the "can you program at all"-type fizzbuzz problems. They're annoying, and indicative of a remarkable failure in our hiring system, but they're a minor nuisance.

      Your second type, in my experience, is not typically referred to as leetcode at all, and is effectively impossible to "grind" for.

      Unfortunately, my third type is extremely "grindable", as memorizing all the common algorithmic puzzles is a thing you can just do if you spend enough time on it.

  • mettamage 7 months ago

    Sooooo...

    Tangentially related

    But I'm looking for leetcode buddies to grind with actually. I have around 300 questions done.

    I'm not in a rush, and also, I kind of like it. The more I do it, the more it's actually fun.

    Anyone wants to join me? We could form a small group.

    My email is in my profile.

  • esco27 7 months ago

    This is a mix of laziness and convenience. Hiring often boils down to what’s easiest, not what’s best. Leetcode is a proxy: it quickly filters candidates and spares everyone from more effort. But if you hire based on Leetcode, you’ll get Leetcode engineers. If you hire based on track record, impact, and real-world projects, you’ll likely get someone who’s better—and actually fits the role.

    If you want to do your part and can afford it, turn down any Leetcode based interviews and let them know why if they ask.

    • marcosdumay 7 months ago

      Yes, always keep basic statistics in mind. Every single proxy you apply that isn't correlated to what you really want will filter-out the outliers towards the median.

      And remember what the median job candidate that applies to your place looks like. Do you want to remove the people that don't look like them? If yes, you are on the clear.

    • almost_usual 7 months ago

      Top tier companies can filter on both, the market is saturated now.

      • esco27 7 months ago

        That’s fair, but most software jobs aren’t at top-tier companies. HR often stays out of the process due to technical barriers, leaving engineers to handle interviews. Leetcode becomes the easiest way to offload the hassle—ironically, a self-inflicted wound on fellow engineers.

  • uberman 7 months ago

    I agree 100%. If a company wants me to do a standardized take home test, I would consider it. If they asked me to balance tree on the spot I would tell them there is almost certainly a well maintained open source library for that or there is google. If they want me to do what amounted to a sprint in thier domain, I would tell them my consulting rate.

  • bediger4000 7 months ago

    Grinding leetcode is kind of the same as grinding college classes, where you memorize material, get a passing grade, then forget as much as possible.

    Doing leetcode type problems, reflecting on what else can be learned, trying to draw general conclusions about programming techniques and what an interviewer might be getting at with a problem can have some benefits.

  • jfyasduw 7 months ago

    What bugs me is applying for Haskell/Rust/Scala roles and they make me leetcode in Python which I never use.

  • OutOfHere 7 months ago

    Programming exercises are fine, but they should be relevant to the job, ergo a down-to-earth real-world problem, without any element of deceit. Also, they should not be the primary reason for hiring someone.

  • 29athrowaway 7 months ago

    It is hard to prove what you achieved in other companies.

    I don't like competitive programming but at least it is an objective measure. Most criterias in interviews are subjective.

  • returnInfinity 7 months ago

    After many interviews last few months, I would prefer all interviews be leetcode.

    Tired of getting rejected, because you don't have experience with their particular tech stack.

    • tzs 7 months ago

      I don't think that would lessen rejections for not having experience with their particular tech stack. I think the tech stack requirements are because they don't expect people to stick around long term and so don't want any of that time taken up by the person having to learn a new tech stack.

  • welder 7 months ago

    I'm building https://wonderful.dev to solve this.

    • acjohnson55 7 months ago

      I like the concept.

      When I worked at a small startup, I proposed and implemented an idea where instead of doing our take-home screening, applicants could instead produce a 1-pager of publicly visible representations of the achievement. Like, if someone has open-source contributions, why should they have to do a canned take-home project?

      The idea was that they could select three examples to link to, and then write ~5 sentences on each for why they selected the example and what it shows about them.

      The goal of the format was to cap the amount of effort on both sides, while getting valuable signal.

      No one actually took us up on this during the time I was there, but I am still proud we offered the option.

  • alexwasserman 7 months ago

    Rather than pure leetcode in interviews, I like really simple take home activities. I know take-home’s aren’t well liked either. But, make it really simple and provide a fit repo to commit into. Provide the marking rubric.

    Then you actually get to evaluate someone on how they’d work on your team.

    - are their PRs nicely written - do they even know git properly - do they comment code - even for basic code is it structured - does it pass the linter?

    Eg. Providing candidates a challenge and the actual pylint command you’ll score it with it’s really easy to see who even bothered to check it passes.

    Rather than putting someone on the spot with leetcode see how they behave as a dev. On your real team you’ll have a story with acceptance criteria and a repo to PR into. Give them the same.

    It can be a short tiny bit of code but you’ll learn so much about there behavior.

    This is also much harder to just google the answer, because you don’t just care about the answer.

    Design it so it’s just an hour or two, then offer the choice. Explain you need to evaluate their programming skills for a programming role and they have the choice of interviewer led in-person, or a take home. Both designed to be roughly 1-2 hours.

  • _giorgio_ 7 months ago

    Any example of good programming problems (python), that you can solve while learning something?

  • 7 months ago
    [deleted]
  • 11101010001100 7 months ago

    It is humiliating to work for someone else. What else is new.

  • dlisboa 7 months ago

    I honestly don’t understand what it gets companies. It amounts to eliminating surgical candidates with 30 years experience because they can’t do organic chemistry on the spot.

    Who came up with this scam? From all I hear the quality of engineering at these FAANGs has not been increasing.

  • turing_complete 7 months ago

    "I'm so smart that you should just hire me without any interview but also I have to practice for weeks before I can implement a topological sort or longest common subsequence algorithm."

  • 7 months ago
    [deleted]
  • almatabata 7 months ago

    > WHICH BY THE WAY IS NOT SOMETHING YOU WILL DO A LOT IN BIG TECH BECAUSE WE HAVE CODING ASSISTANTS NOW FFS!

    Even if we take that point as fact. The whole point of the exercise, is to check if you can write it yourself unassisted. If you cannot do it yourself, how can I trust you to judge what the assistant is writing? The assistant is only as good as the supervisor at this point.

  • 7 months ago
    [deleted]
  • draw_down 7 months ago

    [dead]

  • Salmonfisher11 7 months ago

    [flagged]

    • hpenvy 7 months ago

      It's a very practicable metric that enables you to show that you're worth getting a top job in interviews. It's very merit based even if that merit is less being a good SWE and more being good at problem solving + self discipline.

      • Salmonfisher11 7 months ago

        It's actually not. It has been shown that you can get extremely good Leetcode ratings by systematically learning their 15-20 most used patterns. This can be done easily in a sort time span. Guides how to achieve this can be found on Reddit.

        Same happens to students if they start to memorize old training exams systematically. They exploit that professors and their assistants will recycle/adapt a decent amount of old questions. Doing this is cheap in terms of effort compared trying to understanding everything.

        Of course people that succeed in LC tests will defend it. Gatekeeping is a natural response.

        That's reason why we stopped using it and spent much effort in eliminating any possible preparability. You get highly qualified pattern matching monkeys if you offer them the stuff they are trained for.

      • jinushaun 7 months ago

        But 10-15 years experience has to count for something. Why do senior and principle positions still need to leet code interviews?

        • Salmonfisher11 7 months ago

          Because there are a lot of fraudsters.

          With social skills and salesmanship, you can never have delivered top-class work even after 15 years as a developer.

          Quite a few people know how to "play the game". That's pretty easy if your superiors have no idea about software development themselves.

    • yungporko 7 months ago

      boycotting the thing that puts a roof over your head is a luxury few can afford

      • jpalawaga 7 months ago

        SWEs will happily tell you that their profession is such a highly demanded activity and they don't need a union because the pay/benefits are so excellent.

        However, I think this comment highlights the fact that swes are not some privileged elite above at least some of the benefits of organized labour.

        the leetcode will continue until union perception improves.

    • talldayo 7 months ago

      A lot of developers that aren't purely obsessed with frontend or AI-like niches find Leetcoding rote. Ultimately it's just about facing a question you are unfamiliar with and whiteboarding it with a potential employer - it's only humiliating if you've got an ego to swallow.

      • everdrive 7 months ago

        I think that might be a bit narrow. It's humiliating not because you need to bear your ignorance in front of a judgemental audience. (although that part certainly is not comfortable) It's humiliating because the leetcode is not actually representative of anything you'll need to know to do the job. It's an exercise which selections for who can jump through the most hoops, and doesn't really select for the actual job skills.

        • sfn42 7 months ago

          That depends entirely on the problem they ask you to solve. All the technical interviews I've done have been completely reasonable basic programming tasks. Yet I always get really good feedback, did one a few weeks ago where the interviewer said it was the best technical interview he'd had in years. I felt like it could have gone better, and like I could have done just as well years ago when I was fresh out of university.

          So that tells me that a lot of devs really suck at basic programming, I assume they're the ones joking that their job is just copying code from SO. And probably also the ones who complain about having to show that they can write code before being hired to write code.

          Personally I think it's great. Easy way to show that I know my shit and separate myself from all my peers who somehow graduated with the same degree as me despite not being able to write a correct fizzbuzz after 3 years. I'll take a live coding interview any time. I know I'm good at this, don't mind proving it.

          • everdrive 7 months ago

            I agree with a lot of what you're saying, but I think we probably disagree when it comes to leetcode. One thing I'll note is that in my experience, companies implicitly do not _want_ you to work at too high of a level; they fill up your hours until there is no free time, prevent you from returning to older tasks or projects to improve them, and more or less require "good enough" solutions at best.

            This isn't necessarily meant as a complaint, but this is yet another way in which leet code may not really fit the job that's being performed; the company is attempting to get as much work done as possible and for whatever reason is not very incentivized to ensure that the work is done to a high standard. In other words, the super complex leet code sorts of techniques will just never in practice be utilized.

            Now to your point, whether or not you find yourself in this situation is going to depend on your job and your company.

            • sfn42 7 months ago

              I've never really done much leetcode. Might have done a problem here and there for fun but probably less than 10 total.

              I'm not sure whether people literally mean leetcode when they say leetcode, but I should probably clarify that I'm not specifically talking about problems from the leetcode website. I did once get a sort of quiz from codingame to complete at home(took like 15 minutes or so), but other than that I think my interviewers have made up their own problems.

              One was a class responsible for storing car data, being able to get them by plate number and stuff like that. Recently I did one where I basically implemented a tax calculator, calculating bracket tax and stuff like that. The general format has been a class with method stubs, and a corresponding test class. The assignment is basically make the tests pass.

              I think that's a good format. Allows you to write some real logic, sort of similar to what we do in daily work. The tax calculator was a bit math-heavy but still required some logic and some creative use of data structures to store tax brackets without hardcoding everything etc.

      • 7 months ago
        [deleted]
  • philwelch 7 months ago

    > Real median household income was $80,610 in 2023

    https://www.census.gov/library/publications/2024/demo/p60-28...

    Stop whining.