Almost every employer asks for a programming test. It’s pretty insulting.
What’s the point of having a CS degree from a top school when every employer is giving me a programming test? Almost all these tests are simpler than the work I did when in school.
A competent interviewer should be willing to spend a few minutes talking to someone and evaluating them. If you can’t evaluate technical ability in a few minutes of conversation, then you shouldn’t be making hiring decisions.
There might be a lot of unqualified fakers out there. Many CS programs allow programming assignments to be done in teams. That’s a huge mistake. If programming assignments are done in teams, that enables someone clueless to team up with someone competent, and earn a degree they shouldn’t have. Then, you have lots of unqualified people walking around with degrees.
Sometimes, it’s a multiple choice test with errors, or tests that use really obscure language features. Then, I have to guess the intelligence of the interviewer. One example question in C/C++ is “Does ‘if (x=3)’ … compile?” Technically, that’s legal code, but usually a bad idea. Any decent compiler will give a warning, and it’s good practice to make sure your code compiles with zero warning. Another example C++ test question is on multiple inheritance, which you should almost never use. I’ve never seen production code that used multiple inheritance where both base classes had a function with the same name, but that question is on many C++ programming tests. Another example question is “What happens if you modify a data structure while looping over it with foreach?” The correct answer is “You’re an idiot if you write code like that.”
Sometimes, it’s a project that would take awhile, even when I already know the language well. Do you really expect me to waste a few hours/days for your stupid interview assignment?
I don’t have Visual Studio or Excel or SQL server on my PC at home. Why are you demanding I install those to do your stupid assignment?
Sometimes, the “assignment” is an attempt to get free consulting. One employer demanded I learn a 3rd party trading API and write some sample code. He was planning to convert his program from one broker to another. If I wrote the sample code for him, then he could cut+paste, and then he wouldn’t need to hire me!
A pro-State troll might say “FSK doesn’t want to do programming tests because he’s an unqualified loser.” I’m insulted by stupid assignments that usually have little similarity to real work. If it’s too short, it isn’t a valid test. If it’s too long, it’s a waste of my time. I’m offended by thinly-disguised attempts to get free consulting. Multiple choice tests frequently have errors.
I’m insulted by interviews that demand a programming test or assignment. There probably are a lot of unqualified losers out there, but there are other ways to evaluate someone. Most of those jobs aren’t desirable anyway. I’m filtering out clueless people by refusing to do the test. What’s the point of having 10+ years of experience and a CS degree from a top school if everyone’s asking basic skills questions on every interview? That’s an indication that writing software is not a true professional career. If prospective employers aren’t treating you like a professional, then you probably made a bad career choice.