None of the code/design/architecture I wrote this year will help convince an interviewer I can program. Can’t even show it to them because it breaks the apples to apples system they are trying to do with their robotic standardized questions. Still have to play the game: leetcode drills, whiteboard practice, learning to talk and make jokes while white boarding, re-learning Java for the sole reason of needing it for interviews, picking a good “biggest flaw” ahead of time, etc. I wish I got to write algorithms all day but if you actually want to learn to contribute to a project, design and just reading code trumps algorithms, especially since the algorithms can just be looked up the once-per-year they are needed<p>There are (edit:almost) zero programmers who can’t write a while loop. There are just 199/200 people who are stressed out by the bizzaro interview process that was designed by aliens to promote leetcode. There are however millions of programmers who can’t write maintainable or readable code
This is a solved problem. Since 2007, everyone knows the answer to this: the search population is dominated by the ones who can’t.<p>It’s the same as when you get that bag of mixed nuts and pick out a bunch, put the almonds back in and eat only the pistachios. About ten minutes in, your search for pistachios becomes ever so hard. You take a handful of almonds out, put them back in and repeat, barely seeing a pistachio.
The below github account is making fun of the concept 'Enterprise code' and contains an Enterprise-level FizzBuzz solution. I have never seen that much code do so little.<p><a href="https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition" rel="nofollow">https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris...</a>
I’ve been sitting in some interviews for the first time from the other side, and there are a handful of observations I’ve made both from the candidates we’ve interviewed and myself. Just to note, this is at a typical boring enterprise type company. No leetcode or take homes. The interviews primarily consist of mostly very simple “trivia” type questions that someone with the bare minimum experience with our stack should understand.<p>One of the big things I’ve noticed, is people don’t know what they haven’t used. Something pretty common I’ve noticed in some candidates is that when they’re asked how they would <i>X</i> they start going into some over engineered proprietary framework or library that they’ve used at their past company rather the more fundamental answer we’re looking for. They never really get the chance to learn things because their first job out of school has them working on problems that require a very limited skill sort or ability. I can’t speak to how 2007 was, but I wonder how many programmers couldn’t figure out fizzbuzz because they simply never had to use modulo division. I’ve never had to use the modulo operator in my time building CRUD apps and frankly I had never heard of it until I had heard of fizzbuzz many years ago. Keep in mind that many people come from non traditional background and do not have any sort of technical education besides what they learned themselves and that for a number of business that’s been enough to hire them to maintain whatever business applications they’re working on.<p>I myself am not a particularly good developer either. Though I could pass a fizzbuzz test there’s no way I’m making it through even some of the easier leetcode problems. And so, at this point I’m looking for a way out of the industry. But when you look at how much money even no name companies will pay for a job that is not gatekept by expensive credentials and can be learned on your own time, you’d be dumb not attempt run towards it. Note I’m not arguing for a credentialized gate keeping, I personally can’t stand credentialism, but there are a wide variety of people rushing into the field who can make decent money even if they’re not particularly good as long as they’re providing whatever the employer things is business value.
This submission should be labeled (2007).<p>Or better, bury the article in an unmarked grave and never see it again. Few people have done more harm to hiring in the industry than Atwood and Spolsky.
I'm in the middle of a programming boot camp where they just blaze from topic to topic to topic, we never do any considerable project work to nail any of it down, and even though they state clearly "you need to be studying outside of this class", I know a bunch of students won't because it's 12 hours a week and billed as something you can do on top of a full time job.<p>So once these people graduate, OF COURSE they're going to stumble over for loops and if statements; the only think they know is how to follow along in vs code while someone builds a react app over zoom.
I'm mostly self taught other than some basic in high school and R in university. It's taken me years of working on different kinds of projects, reading tons of books and practicing to the point where i became competent enough to work on a decently large project from start to finish and complete something.<p>I don't feel like i really went from programming stuff to knowing how to program until after i'd finished a bunch of smaller programs in a few different languages. Like a lot. Years worth.<p>There came a point though where, even if i was working with an unfamiliar language, once the syntax is out of the wat, i started thinking about the problems i was working on differently. I understand now how computers work on a more fundamental level and what the code is actually doing under the hood. What's actually happening when i declare a variable, define a function or compile some code.<p>Before i understood that stuff I realize now i was always kinda just shooting in the dark only vaguely understanding what i was actually doing.<p>But, it took a long time. I guess the very first time i ever programmed was i dunno at like 5 or 6 years old when i managed to write a loop on the atari. It took almost two decades learning on and off for me to actually understand what i was doing.<p>I'm still not sure if i'd feel qualified enough to apply for a professional programming job.
There is a huge difference between knowing syntax and being able to write code. I have even seen senior developers write very convoluted code because they couldn't break down the problem in its simplest components.<p>I would say that the ability to write good code is related to problem solving capacity and intelligence.
Programmers with degrees claiming years of experience who can't write FizzBuzz - Is this true as of 2021 ?<p>It would be astonishing to me if it's true though.
During the interview, you find yourself fending for yourself alone, your corporate framework is gone, and you realise how you miss your desk phone, and somewhere out in space a voice you can't hear is hollering: "The secret is banging those rocks together, dude!"
I don't believe this observation. I've never met a coworker or a person interviewing at my office who is unable to program these simple examples.<p>In fact I'm repeatedly amazed at how well people program and think about solutions to problems.
I would attribute some of it to translating the word problem into a logic problem, which I think Fizzbuzz is really testing. Once you see it's just one conditional testing multiples of 3 and 5, and understand it covers the whole problem, it becomes trivial.