Finding people who are willing to spend months in order to get the job is one of the biggest reasons companies use leetcode.
Is this a nonstandard perspective?
I wouldn’t use automated screening tools. These tools select for irrelevant criteria in my opinion, and are mostly useful if as an interviewer you’re too lazy or too incompetent to formulate your own questions that tell you whether a person can solve problems and interact well in a group problem solving situation. But I’m an oldster so YMMV.
I assume you do a much better job given your positive feedback, but it’s not something that every potential interviewer will replicate well if they try to follow your description.
It typically looks like a 15 minute phone interview with HR, followed by a lengthy Leetcode/ take home exam (that's auto graded, no humans), a computer form where you input your school, GPA, and courses taken (seriously). All of this info gets turned into a number and then HR takes a sample of the top X and hands it to the hiring manager: "Here are the 'viable' candidates".
The hiring manager then has to (basically) interview the candidate themselves. Ensure they actually have the skills for the position, determine their interest in the role, etc. So this is probably what you're doing right now. Just imagine someone filtered a bunch of your resumes first.
Take with a grain of salt, but I have heard of some folks explicitly getting permission to do hiring outside of HR at said large companies. The kids they get out of undergrad and through HR's Leetcode process are apparently complete garbage. Don't understand C, pointers, memory, or Linux at all. Don't even know what files are.
I've done a lot of interviews, and I just accept that I need to explain what a byte is to the candidates. You'd think people with a programming background would know what they are, but it's not a hard concept, so whatever. I don't really care if they know how to open a file or what a byte is, I want to know if they can describe their output, and then write code that does what they said. And if they can write a loop with a loop in it without going off the rails. Bonus points if they can communicate reasonably throughout. You can teach someone how to use files, and unless you're a C shop, most people don't need to use that much C that they can't learn it when it comes up, if they need to. But it's hard to teach 'make a spec, follow the spec you made' and if you have to teach a programmer how to do nested loops, they aren't a programmer yet. (which is maybe fine, if you're interviewing someone who's only programming adjacent or something)
How I got my job is I searched linkedIn for <company name> + recruiter and just added all of them. That alone generated lots of recruiter calls. This was 2018, not sure if things have changed
Which is of course exactly what these companies should expect if their idea of candidate "preparation" consists of sitting in front of a webform and being asked to type in functions, one after another.
Like a rat in a cage.
Lots of people who come up through the ranks only know how to do coding interviews - coding is what they do in their job, it was the interview they passed and it is what they know in depth. These are also the people confused about why their careers stall.
I never used coding for interviews at Google - even for junior engineers I wanted to see if they understood issues beyond their fingertips. Of course there was always a coding interview or two, so that base was covered.
Can you explain? AFAIK Google has a set criteria for engineering interviews. 2-3 coding, 1 design, 1 something else. AFAIK if you get asked to do a coding interview you have to ask coding questions. The people who review your interview would not find it acceptable to not do it.
What started off as "write a binary search" has turned into a massive gate-keeping process to try to select candidates who fit a profile. I'm not sure what that profile is, but I know I don't fit it. I grinded Leetcode for 2 months and failed Google, Facebook, and Amazon. I thought there was some luck involved and decided not to put any more time into it. But, I don't fault others who do.
I do think the large pay increases the candidate pool, so there has to be some form of testing. I just don't think as a senior developer, it assesses my skills.
I don't know if it's fair to say the candidates care more about prep than solving real problems if they're just reacting to what at least some employers are expecting.
If you want button-pushers who will keep their heads down and do exactly what they're told, even if it doesn't make sense or is detrimental to the company, then leetcode is a good way to find those people.
If you want actual human beings who are able to think abstractly, critically, and contribute to the team and help the company grow, then look for people who have been working long enough to know that leetcode is a dead end.
I am very against Leetcode style interviews. I promise every candidate interviewed by the org I lead that they won't be asked academic CS trivia.
But, I don't think what you said here is accurate.
If it were true, these other companies where all the critical thinkers have been flocking to would have displaced the FAANGs.
There are good reasons to dislike Leetcode, but your comment reads like sour grapes to me.
A way more apt comparison would be evaluating him on his knive sharpening skills.
> ego-driven hazing ritual
:-)
--
Such a den of.... you can fill in the rest...
I know someone who was literally fired for being "too social" -- and all they did was participate in the stupid parties that were had like "Build you're departments happy hour bar, here is $400 for alcohol to stock it up!!"
They just don't take their day jobs seriously enough and spend most of their time on LC, when you hire them, they leave in a few months because that is what they are good at.