3 ms·
I am one of the people who was involved in the original discussion twelve years ago. It is incorrect to say that there are a surprising number of programmers w
by braythwayt 7y ago
I am one of the people who was involved in the original discussion twelve years ago.
It is incorrect to say that there are a surprising number of programmers who can't program something as simple as FizzBuzz. The vast, vast, vast majority of working programmers have no trouble with such ridiculously simple toy problems.
However, although the overall proportion of self-identified programmers who can't program FizzBuzz is very, very small, the proportion of job applicants who can't program FizzBuzz is surprisingly large.
The entirety of the "surprise" as originally described was that the percentage is so out-of-whack. But once you think about it, it is not so difficult to understand why this may be so.
Competent programmers spend most of their careers working, not interviewing. If they are looking for a job, they tend to only go to a few interviews. Whereas, incompetent programmers spend more time looking for jobs, and when they are looking, they tend to apply over and over and over again to job after job after job.
So every company that has an opening gets "spammed" with the same couple of hundred applications from the same people the are applying for job after job after job. And many of them can't program FizzBuzz.
Whereas, the few competent people looking for a job tend to get an interview or two through referrals, then get an offer, accept it, and they are back in the workforce. But the couple of hundred applicants who can't program FizzBuzz shoulder grimly on, applying for the next job opening they find.
The net result is that if you have a job opening, you might have to filter out 90 or 95% of the applicants as "no-hopers," but that does not mean that 90% or even 9% or even 0.9% of programmers cannot program FizzBuzz.
TL;DR: The sample of programmers applying for a job is not representative of the set of all programmers, not even close.
- braythwayt 7y agoJoel Spolsky explains the phenomenon quite well when explaining that just because you hire the top 0.5% of job applicants, does not mean you are hiring the top 0.5% of programming talent: https://www.joelonsoftware.com/2005/01/27/news-58/ https://www.joelonsoftware.com/2005/01/27/news-58/
- ubu7737 7y agoI am someone who has changed development jobs quite a lot, far more than the average for my seniority. Skill in software engineering can't just be measured by skill at writing the language, and this is trending forward faster and faster. The really accomplished engineer is one who has experienced many teams, many managers, many processes, and many deployments. The accomplished engineer is opinionated about testing methods and about code readability, because he has suffered under many misconceptions about these things and taken the time to consider the alternatives.
- braythwayt 7y agoEven if you change jobs frequently, and take long sabbaticals (I took a year off for the birth of my first child, and another to write one of my books), you probably still spend much, much, much more time working than actively seeking jobs from strangers.