If a programming assignment is too simple, then it isn’t a real test.
He's wrong. So wrong I doubt he's ever hired a developer.
The reason interviewers give applicants simple programming tests is that a large percentage of applicants are literally not capable of programming at all. I mean they can write code the way 23-year-old club sluts can cook: Literally zero. They can't do it. Many have never even tried. This is real, I have seen guys like this get through the screening process into onsite interviews. You ask them what they've worked on and they can't tell you. Everybody I know who's been involved in the interview process from the employer side has seen applicants like this.
Simple go/no-go coding tests are called "fizzbuzz" tests, after a famous (in the field) blog post by Jeff Atwood about the problem. Note, though, that when Atwood says 99.5% of applicants aren't even programmers, he's not talking about interviewees. He's talking about resumes they receive. Most of the hopeless cases are easy to weed out.
Well, for really simple tests like fizzbuzz, I always agree to do it.
What I hate are programming assignements, I do it, I know I did well, and then I got an interview.
For one interview, I went on an interview, he gave me an assignment and implied that I'd get an offer if I passed. It took a few hours, I did it, I know it worked, but no offer.
I have the opposite problem. I know I'm one of the top 1% performers, but my resume gets drowned out by all the chaff. For 95%+ of resume submissions, I don't make it past the keyword screening phase.
I don't have any connections or "networking" (another thing Captain Capitalism hates), so I'm SOL.
Most of my experience is in C/C++, which nobody uses anymore. I get zero credit for that experience when applying for jobs in PHP, Java, .NET, or other things. They aren't that much different. You still have to understand the requirements and understand the legacy code, and that skill is transferable, but nobody considers me. So, even though I'm one of the top 1% performers, I'm an unemployable loser.
There's also something that nobody ever explicitly states. No matter how much he claims to want the best, a hiring manager ALMOST NEVER wants to hire someone more skilled than him. Paradoxically, being on the top end of the experience and ability scale makes me unemployable.
I'm never even asked fizzbuzz or sincere technical questions on an interview! It's all resume keyword matching! I haven't gone on a single interview where the interviewer was genuinely evaluating my technical ability! That wasn't the case 5-10 years ago when I started.
BTW, hooray for Captain Capitalism! You sent me over 150 visits today to that post! Just in case you wanted to know how much power you have to promote a link. According to piwik, I got 5x my normal traffic today.
I'm doing my part to promote the decline! Instead of being gainfully employed generated wealth that criminals can steal, I'm going on the occasional interview, browsing the Internet, and working on some personal projects.
The thing that offends me is that I can't find *ANY* job. I'd take something entry-level just to get back in the workforce and get more experience. I can't even get that.
No, I've never been responsible for hiring. With my ability to evaluate intelligence and personality type, I should be great at it, but I've never had the opportunity.
I'm a sysadmin who used to be a developer. If they ask for a 5 line shell script on the whiteboard, that's ok. They are checking to see if I can script at all. If they ask a slightly obscure question about escaping special character, it's because it will come up in the job. I they ask the traditional question about the difference between a soft link and a hard link, it really is important for a sysadmin to know the difference. Lots of applicants fail these questions, which are the equivalent of "which side is the gas pedal on?".
The other important thing to interview for is personality. Is this person a team player? In too many cases, they are not. A person who is mediocre technically (but not incompetent) who can play well with the other folks is often far more valuable than a superstar who is an asshole.
It isn't easy as it sounds. If you're targeting individual customers, you need a *LOT* of customers before it becomes viable as a solo business.
If you want to raise capital, VC is another headache. Great programmers don't have the personality type the VCs are looking for (and if they did, they wouldn't be great programmers). If you partner with someone non-technical, more likely than not, you wind up partnering with a Steve Jobs-type psychopath who winds up controlling the business. (Zuckerberg is hailed in the mainstream media as a genius. His biggest accomplishment was cheating all his early partners, especially Eduardo Saverin.)
If you target corporate customers, you're SOL unless you have contacts.
Even if I do successfully bootstrap a business, part of the taxes I pay subsidize banksters. Then, the banksters will prefer a good Ponzi like Twitter or LinkedIn or Facebook, rather than a fundamentally sound business.
If I want to save up my salary and use that as seed capital, high taxes makes that hard.
The State severely restricts the economy, making it very hard for talented workers to start or bootstrap a business.
High taxes and a corrupt monetary system are one of the big reasons talented workers can't easily start businesses.
A really fantastic post! As an IT guy i can relate with this post fully!
My interviews tended to be more with HR people asking me support questions dealing with networks amd such. Most of the time i could tell they have no clue to what i'm saying or even the question they are asking. I even had IT managers interview me who have no clue to what im talking about or what i bring to the table asking me all of these questions when in reality the IT manager is really an accountant who filled the position because he solved some bullshit problem some executive had.
Then they want us to do all this work and then want to pay us a bullshit salary for all those hours of work you have to put in. As well as in my case dealing with people who have no clue on how to use a computer. No matter how you look at it these non technical people view us as "kids playing with computers". Its more than that as it takes people with an ability to think and analyze to run a network or even program. Very seldom are there non-technical people who understand our work whether its programming, developing or even support. Those are few and far between. And for those stars who are "shit hot! at what they do do not get hired because they know that they will have to pay you a hefty salary. Why buy one when you can buy 3 or 4 programmers. Sure they will not have the experience or even be any good but they can learn as they go.
Well im ready to go fishing got my pole and tackle box! Who's with me!
I thought that when something was "easy" it wasn't worthwhile. Isn't real talent capable of managing around government loopholes and traps and deliver the results nonetheless ?
Being single with no kids really helps to save and start a business.
Also, what if I invent something and partner with a business or two to make it happen instead of trying to start on my own ?
What if I am an ideas manufacturing plant all by myself and have so many ideas that I can afford to risk being stolen on one or two ideas to get a foot in the company and then negociate a partnership for the rest of the idea gravy train ?
I'm going to make this happen with nothing no matter if I have to suffer a reduced life standard to get started. I have nothing to lose.
Personally, I have a big problem with the concept of employment and the employee-employer relationship.
My biggest problem is with the idea that I have to sell myself to an employer, this is simply never going to happen anymore.
I'd rather sell my ideas, my projects, my technologies, my inventions in a piecemeal manner.
I have no problems with the idea of selling products and every problems with the idea of selling myself.
If I can take my abilities, package them into products and sell those products in a piecemeal manner to companies, that is a much better approach than trying to enter the company as a hired employee.
"The other important thing to interview for is personality. Is this person a team player? In too many cases, they are not"
So, a person who is not a team player should go and die in the streets because he is not deserving of earning a living ?
Did you know that more often than not it's the others who are a jerk to you and your inability to negociate being stuck between a rock and a hard place when it comes to be respected makes you a non-team player ?
There is a paradox here, being a jerk will evict you from the work force but so is being too nice and finding the middle ground is akin to quantum physics uncertainties.
So I decided that from now on I will be a complete jerk who is aggressively charging at everything in sight and that I will pound and crush my way to success because we live in a cut-throat economy anyways.
I work for a major computer manufacturer and services company. We have a team of around a dozen and a half individuals that support (as in keep the stuff running) some systems that support the company's manufacturing plants world wide. Quite literally, if those systems go tango uniform, no manufacturing or shipping can be done anywhere.
Now, you would think that given the value and importances of what we do, the company would take care of us well. You would think wrong.
Periodically, when the Power Ball gets up to $300 million or so, we all throw in a few bucks and buy a pool of tickets.
I guarantee that if we won the lottery, we'd all very quickly quit without any loyalty to the company.
Consider the following: if a manager is a political beast, and if the too good to be employeed programmers are correct with their assertion that no manager wants to hire a better engineer then the person doing the hiring, then one can conclude that few programmers are better programmers then their managers - meaning, all the boastfully unemployed are really shitty coders, which is why they are unemployed in the first place.
If you are good, then you are known by those arrogant, experienced, and successful enough to hire you. The most important language to code in is English - if you cannot communicate, document, understand, and empathize with your target audience and your co-workers with complimentary needs - you are an incompetitent idiot. Period.
There is a vast difference between having ten years of experience and having one year of experience, ten times in a row. To be certain, there are exceptions.....just like there are ethical bankers and women with sexual self awareness......wait....no, there aren't any exceptions,
If a programming assignment is too simple, then it isn’t a real test.
ReplyDeleteHe's wrong. So wrong I doubt he's ever hired a developer.
The reason interviewers give applicants simple programming tests is that a large percentage of applicants are literally not capable of programming at all. I mean they can write code the way 23-year-old club sluts can cook: Literally zero. They can't do it. Many have never even tried. This is real, I have seen guys like this get through the screening process into onsite interviews. You ask them what they've worked on and they can't tell you. Everybody I know who's been involved in the interview process from the employer side has seen applicants like this.
Simple go/no-go coding tests are called "fizzbuzz" tests, after a famous (in the field) blog post by Jeff Atwood about the problem. Note, though, that when Atwood says 99.5% of applicants aren't even programmers, he's not talking about interviewees. He's talking about resumes they receive. Most of the hopeless cases are easy to weed out.
Well, for really simple tests like fizzbuzz, I always agree to do it.
ReplyDeleteWhat I hate are programming assignements, I do it, I know I did well, and then I got an interview.
For one interview, I went on an interview, he gave me an assignment and implied that I'd get an offer if I passed. It took a few hours, I did it, I know it worked, but no offer.
I have the opposite problem. I know I'm one of the top 1% performers, but my resume gets drowned out by all the chaff. For 95%+ of resume submissions, I don't make it past the keyword screening phase.
I don't have any connections or "networking" (another thing Captain Capitalism hates), so I'm SOL.
Most of my experience is in C/C++, which nobody uses anymore. I get zero credit for that experience when applying for jobs in PHP, Java, .NET, or other things. They aren't that much different. You still have to understand the requirements and understand the legacy code, and that skill is transferable, but nobody considers me. So, even though I'm one of the top 1% performers, I'm an unemployable loser.
There's also something that nobody ever explicitly states. No matter how much he claims to want the best, a hiring manager ALMOST NEVER wants to hire someone more skilled than him. Paradoxically, being on the top end of the experience and ability scale makes me unemployable.
I'm never even asked fizzbuzz or sincere technical questions on an interview! It's all resume keyword matching! I haven't gone on a single interview where the interviewer was genuinely evaluating my technical ability! That wasn't the case 5-10 years ago when I started.
BTW, hooray for Captain Capitalism! You sent me over 150 visits today to that post! Just in case you wanted to know how much power you have to promote a link. According to piwik, I got 5x my normal traffic today.
I'm doing my part to promote the decline! Instead of being gainfully employed generated wealth that criminals can steal, I'm going on the occasional interview, browsing the Internet, and working on some personal projects.
The thing that offends me is that I can't find *ANY* job. I'd take something entry-level just to get back in the workforce and get more experience. I can't even get that.
Maybe I should get a job as a security guard? I could work on my blog, write a book, or work on my own projects in the idle time.
No, I've never been responsible for hiring. With my ability to evaluate intelligence and personality type, I should be great at it, but I've never had the opportunity.
ReplyDeleteWow! I just looked and an entry-level security guard makes $20+hr in NYC. That's not bad!
ReplyDeleteMatthew, see http://www.realfreemarket.org/blog/2013/05/21/dont-sign-confidentiality-agreements-before-a-programming-job-interview/#comment-3358
ReplyDeleteThe author addresses what you said. I agree though, he's very unclear about it.
I'm a sysadmin who used to be a developer. If they ask for a 5 line shell script on the whiteboard, that's ok. They are checking to see if I can script at all. If they ask a slightly obscure question about escaping special character, it's because it will come up in the job. I they ask the traditional question about the difference between a soft link and a hard link, it really is important for a sysadmin to know the difference. Lots of applicants fail these questions, which are the equivalent of "which side is the gas pedal on?".
ReplyDeleteThe other important thing to interview for is personality. Is this person a team player? In too many cases, they are not. A person who is mediocre technically (but not incompetent) who can play well with the other folks is often far more valuable than a superstar who is an asshole.
A question comes to my mind regarding IT guys vs HR and other hiring practices:
ReplyDeleteWhy isn't there more IT guys that start their own business instead of trying to get a job or a gig ?
ReplyDeleteIt isn't easy as it sounds. If you're targeting individual customers, you need a *LOT* of customers before it becomes viable as a solo business.
If you want to raise capital, VC is another headache. Great programmers don't have the personality type the VCs are looking for (and if they did, they wouldn't be great programmers). If you partner with someone non-technical, more likely than not, you wind up partnering with a Steve Jobs-type psychopath who winds up controlling the business. (Zuckerberg is hailed in the mainstream media as a genius. His biggest accomplishment was cheating all his early partners, especially Eduardo Saverin.)
If you target corporate customers, you're SOL unless you have contacts.
Even if I do successfully bootstrap a business, part of the taxes I pay subsidize banksters. Then, the banksters will prefer a good Ponzi like Twitter or LinkedIn or Facebook, rather than a fundamentally sound business.
If I want to save up my salary and use that as seed capital, high taxes makes that hard.
The State severely restricts the economy, making it very hard for talented workers to start or bootstrap a business.
High taxes and a corrupt monetary system are one of the big reasons talented workers can't easily start businesses.
A really fantastic post! As an IT guy i can relate with this post fully!
ReplyDeleteMy interviews tended to be more with HR people asking me support questions dealing with networks amd such. Most of the time i could tell they have no clue to what i'm saying or even the question they are asking. I even had IT managers interview me who have no clue to what im talking about or what i bring to the table asking me all of these questions when in reality the IT manager is really an accountant who filled the position because he solved some bullshit problem some executive had.
Then they want us to do all this work and then want to pay us a bullshit salary for all those hours of work you have to put in. As well as in my case dealing with people who have no clue on how to use a computer. No matter how you look at it these non technical people view us as "kids playing with computers". Its more than that as it takes people with an ability to think and analyze to run a network or even program. Very seldom are there non-technical people who understand our work whether its programming, developing or even support. Those are few and far between.
And for those stars who are "shit hot! at what they do do not get hired because they know that they will have to pay you a hefty salary. Why buy one when you can buy 3 or 4 programmers. Sure they will not have the experience or even be any good but they can learn as they go.
Well im ready to go fishing got my pole and tackle box! Who's with me!
FSK,
ReplyDeleteI thought that when something was "easy" it wasn't worthwhile. Isn't real talent capable of managing around government loopholes and traps and deliver the results nonetheless ?
Being single with no kids really helps to save and start a business.
Also, what if I invent something and partner with a business or two to make it happen instead of trying to start on my own ?
What if I am an ideas manufacturing plant all by myself and have so many ideas that I can afford to risk being stolen on one or two ideas to get a foot in the company and then negociate a partnership for the rest of the idea gravy train ?
I'm going to make this happen with nothing no matter if I have to suffer a reduced life standard to get started. I have nothing to lose.
Personally, I have a big problem with the concept of employment and the employee-employer relationship.
ReplyDeleteMy biggest problem is with the idea that I have to sell myself to an employer, this is simply never going to happen anymore.
I'd rather sell my ideas, my projects, my technologies, my inventions in a piecemeal manner.
I have no problems with the idea of selling products and every problems with the idea of selling myself.
If I can take my abilities, package them into products and sell those products in a piecemeal manner to companies, that is a much better approach than trying to enter the company as a hired employee.
The Great and powerful OZ,
ReplyDelete"The other important thing to interview for is personality. Is this person a team player? In too many cases, they are not"
So, a person who is not a team player should go and die in the streets because he is not deserving of earning a living ?
Did you know that more often than not it's the others who are a jerk to you and your inability to negociate being stuck between a rock and a hard place when it comes to be respected makes you a non-team player ?
There is a paradox here, being a jerk will evict you from the work force but so is being too nice and finding the middle ground is akin to quantum physics uncertainties.
So I decided that from now on I will be a complete jerk who is aggressively charging at everything in sight and that I will pound and crush my way to success because we live in a cut-throat economy anyways.
I work for a major computer manufacturer and services company. We have a team of around a dozen and a half individuals that support (as in keep the stuff running) some systems that support the company's manufacturing plants world wide. Quite literally, if those systems go tango uniform, no manufacturing or shipping can be done anywhere.
ReplyDeleteNow, you would think that given the value and importances of what we do, the company would take care of us well. You would think wrong.
Periodically, when the Power Ball gets up to $300 million or so, we all throw in a few bucks and buy a pool of tickets.
I guarantee that if we won the lottery, we'd all very quickly quit without any loyalty to the company.
Loyalty is a two way street and karma is a bitch.
Consider the following: if a manager is a political beast, and if the too good to be employeed programmers are correct with their assertion that no manager wants to hire a better engineer then the person doing the hiring, then one can conclude that few programmers are better programmers then their managers - meaning, all the boastfully unemployed are really shitty coders, which is why they are unemployed in the first place.
ReplyDeleteIf you are good, then you are known by those arrogant, experienced, and successful enough to hire you. The most important language to code in is English - if you cannot communicate, document, understand, and empathize with your target audience and your co-workers with complimentary needs - you are an incompetitent idiot. Period.
There is a vast difference between having ten years of experience and having one year of experience, ten times in a row. To be certain, there are exceptions.....just like there are ethical bankers and women with sexual self awareness......wait....no, there aren't any exceptions,