Yup. People don't realize how many applicants literally can't even pass FizzBuzz, or some slightly more complicated variant. It is not just a meme. Dunning–Kruger.
I see this a lot on forums, blogs, Reddit, etc. but after having interviewed many candidates, I have yet to see someone that incompetent.
My company is not a hot Silicon Valley tech company either. It's a dull, boring, investment bank. I am generally not impressed at the quality level of most of the candidates we get when we hire. But still 100% of them are able to code more than well enough to pass FizzBuzz.
Now throw anything beyond the easiest of leetcode easy level questions at them and the majority will struggle. But that is still a level above Fizzbuzz and the like. And most come from backgrounds where the last job they were hired for did not leetcode them, but rather relied on language/framework trivia type interviews.
I have, personally, interviewed a senior software engineer candidate, claiming 8+ year of experience coding, who could not write a simple 5-minute exercise, in any language of his choosing. It wasn't FizzBuzz exactly, but if I'd thought to ask FizzBuzz, he'd have busted that as well.
"Write a function that takes a set of numbers [array, list, or equivalent] and returns the average."
Couldn't even get started.
I was the third interviewer. He'd BSed his way past the phone screen and two others and I caught a whiff of "Johnny can't code" and decided to check by asking him one of our new college grad questions.
There have been many more who bombed terribly in a manner that leaves me doubting whether they could solve FizzBuzz given an hour.
I don't doubt your beliefs, but I am surprised that you've not found any candidates who cannot possibly code at all. That probably speaks well to whatever upstream filtering process your firm is using (it would be ironic if it was "coding FizzBuzz using this online coding platform").
My priors for “is nervous in interviews and gets flustered” are significantly higher than for “can’t code fizbuzz and somehow kept their previous jobs”.
This meme has been going around for ages (at least since Spolsky wrote about it) but I really doubt it is as common as people think.
I think it’s still rational to pass on someone who got stage fright, since in that case you have no signal on which to make an assessment. But I think the “can’t code” rationalization does candidates a disservice.
Interviewing is really stressful for many candidates! I encourage interviewers to remember this and treat candidates with compassion; maybe they can tell you think they can’t code, and that makes them more flustered. Vs. a joke about how interviews are stressful that might put them more at ease.
It's quite common but how common depends a lot on where you get your candidate stream from. In my experience it's never to do with stage fright. The candidates don't seem flustered. They just cannot program. Even if it was stage fright, so what? Instant no hire. Your work will be evaluated by people post-hiring too: you have to be able to perform the job you are hired for when asked to do so. Panicking the moment you're asked to do your job is an excellent indicator you should not be in the team.
At my current firm, I hired most of the engineering team. In the early days we relied heavily on website applications and external agencies. A non-trivial number of candidates would struggle with a task like "read a text file into memory and print out the lines". Not FizzBuzz, if anything that's even easier: FizzBuzz trips up some inexperienced candidates because they don't know about the modulo operator, which is relatively rarely used. But almost any kind of program will use files.
At some point we started pulling sourcing and recruiting in-house. We also dropped some bad agencies and got a bit more savvy about which ones were cheating. The candidate stream got better at that point and total failure became less common. Unacceptably poor performance was still a frequent issue though.
Disappointingly, to me, a lot of candidates and even people we hired would try to claim that asking candidates to load a text file from disk was somehow unfair because "real programmers" don't work with files anymore, they just use web frameworks to do everything. Needless to say, that was not the kind of software engineer we were trying to hire.
1. External recruiter shotguns out candidates to my team manager. Having been on the other side of this process myself, any vetting the external recruiter does is pretty minimal and purely behavioral.
2. Our manager passes around resumes to the team, and we collectively review them and give a thumbs up or down based on how subjectively we are impressed by it.
3. Manager assigns the more senior members of the team to conduct phone screens. Typically we throw some of the easiest of the easiest leetcode questions, or very simple "implement this in JS" questions. I personally have failed people at this stage mostly for communication or behavioral issues.
4. On-site. Combination of easy leetcode questions and "implement this in JS" questions. I can honestly, proudly, say that my team does not look for hyperoptimal perfect leetcode solutions - we genuinely focus on the communication process more. Part of the reason for this is, as I mentioned before, most of the candidates we get would struggle at all but the easiest leetcode questions and we cannot afford to be picky. We're not a hot tech company. We're a boring investment bank.
Very, very rarely we get a candidate that has worked at a hot tech company - even a FAANG occasionally. Their candidacy gets treated like a celebrity. But so far all such candidates have been turned down by my manager's manager because "they don't have enough business (finance/trading) knowledge". Never mind that most of our current team has extremely little to no such business knowledge too. In any case I doubt we could match the level of compensation they might be wanting.
Well, it is not FizzBuzz, but the challenge I ask as a "evidently bad" filter ( http://challenge.paystand.mx/challenge ) is just a couple of GET / POST requests .
You would not imagine how many people (fortunately) get filtered by this step.
I can imagine an embedded developer unable to do that, they never do HTTP requests and it's a nightmare to implement in C or C++, a web developer in python/ruby/node should do fine.
It's selecting for languages and candidates with built-in support for HTTP and json and base64. It's far from a 1h problem if the candidate has to find working libraries for each of that.
Depends on an embedded developer.
It is very handy to know TCL or Python so you can script your hardware or create provisioning/testing scripts.
And with the whole IOT thing, HTTP requests in C became much more common.
Thank you! yeah. I designed it with a thought in mind: A lot of the "exercises" or "challenges" that I see people ask for interviews are mainly stupid leetcode type puzzles that do not really reflect what you will be doing on the job.
I wanted to do a challenge that really reflected the stuff that we are doing at Paystand. When you are building a Web based SaaS application, the majority of time you will be a) Interfacing with crappy APIs. b) Doing simple processing in your logic (hence the string processing and sorting), c) Dealing with GET and POST requests in JSON
That's all I tried to present in the challenge. And if you read it, you will see that it gives A LOT of hints. There's even people who have asked me why do I give so many "clues". But on the other side I have gotten candidates that email me to ask me why they API call is returning an error (it is there in the notes that you must use the proper HTTP header). People are lazy, people don't read, and those are not suitable candidates for us.
Totally agree on all points. I don’t think it gives too many hints at all, in fact it feels very much like a half-baked product spec that you’ll probably have to deal with on the job as well :p
Also the point isn’t to demolish the interviewee with a difficult question, it’s to get a feel for how they are to work with (and of course, if they know the basics at all)
I haven't personally, but my ex-wife is a developer at a FAANG and she told me multiple stories of people she phone screened who couldn't actually write a simple for loop.
I don't think it's specifically FAANG but the staggering renumeration they offer IME seems to mean they [disproportionately] attract the naïve. It maybe doesn't help that the perception is that tech giants have very large numbers of developer jobs involving non-complex work that pays extremely well, and that very basic "coding" skills are valuable.
Anecdata, but from five years helping beginners through a popular online curriculum, this pattern is ridiculously common:
1. Beginner learns some HTML/CSS over the course of a few weeks.
2. Start on the JS curriculum, get stuck immediately.
3. Start to ask in forum if there are jobs [at a FAANG] just involve knowing HTML/CSS.
4. Very polite and detailed replies start to appear on forum of the form "well, it doesn't hurt to try but you might want to bear in mind that at entry level you're competing against people who have years of learning behind them", or "maybe just try to work through the slightly harder bits of the curriculum first (bearing in mind that even that isn't going give you a deep knowledge of the subject on its own)".
5. Few months later the beginner reappears talking about how they've applied to x number of jobs with no responses. And they start asking about how to get jobs working freelance. Moderators take some diazepam and start putting together more polite replies.
Anecdata as I can only see a tiny slice of self-learners via the forum; I feel for your ex though
I wonder how much of this is a FAANG problem only due to how much they pay entry-level jobs, and invite people trying to, effectively, win the lottery.
My company is not a hot Silicon Valley tech company either. It's a dull, boring, investment bank. I am generally not impressed at the quality level of most of the candidates we get when we hire. But still 100% of them are able to code more than well enough to pass FizzBuzz.
Now throw anything beyond the easiest of leetcode easy level questions at them and the majority will struggle. But that is still a level above Fizzbuzz and the like. And most come from backgrounds where the last job they were hired for did not leetcode them, but rather relied on language/framework trivia type interviews.