I raise this question because I believe that people who hire are *mostly* insane, idiots and do not have contact with the company's real problems when they try to hire someone.
And I'll say from the start that many of the things I will tell will be IT related mostly because this is the only perspective I have so far: employed as a software engineer.
What do employees want?
Of course everyone wants a great person who is smart, fun, social, knows to do its job well and most of the time finishes his tasks on time.
What do they get ?
They get a lot of people coming in order to get hired, but rarely something that fits all the criterias above.
Come on, let's face it: if you're (very) good at computer you usually have a shitty social life. And there goes fun and social attribute.
They rarely see someone who knows how to balance betwen those attributes not exagerating with one or more.
But most of the jobs don't require a lot of high tech knowledge and the employer still wants very good people, though they are not doing interesting stuff, that can challenge them. This kind of employer is the no. 1 idiot. Why in the world would you buy double barreled shotguns to kill flies? It's the same fucking thing. This is because they are afraid to hire someone who *can* do the job but is not as good as others may be. They are afraid to take chances, they are idiots simply because they cannot measure how much a possible employee should know in order to get the job done(in time). This is all that matters in the end. You shouldn't hire people a lot more smarter than what you need, because they usually get bored, even if the interview was great and interesting. They will eventually leave and you'll find yourself with a BIG hole in the company because you saw that he can do this and that ... no need to hire another one.
Ok, let's leave the employeer and focus on the people that can be hired.
If you come to think a little (not more) we can easily find the extremes of the candidates:
- very skilled but unreachable through dialogue unrelated to their "skills"
- poor skilled but very fun and who easily finds a way to make everyone feel ok, with no interest in something specific
Ok. So which one of thos would you hire?
Some would say to hire the skilled one. I would say you have a better chance in the long run with the poor skilled idiot. Actually I wouldn't hire any of them.
Probably I would be hiring a social person who knows how to learn fast. This kind of people are by far much more interesting than any of the geeks that cut themselves shaving every 3 months but can write a program head to tail without a warning with just a pen and a paper. They may not be as much as interesting as the poor skilled idiot but you can work better with them.
You know, it is not important for a person to be the best at what he does, he must have excellent comunication skills. These are the key factors in a success of any type of organization that resembles a firm/company.
The great ideas of success come from people who were by no means the best at what they did, they usually knew who to talk with and especially how to talk.
So what is the criteria of hiring?
Does it matter how you look a lot?
Is it necessary to be an expert at what you do?
Do you need excellent comunication skills?
Do you have to make everyone feel well?
Do you have to be good looking?
I guess it cannot be put in a mathematical representation like a function. It usually depends on the employer [who's an idiot in many cases], depends on how big the company is, on their criteria (many firms hire a lot of idiots because the firm gets paid depending on the number of employees, although they actually do nothing, they warm the chairs and the firm gets paid...)
I would bet that people should focus more on the social profile rather than the scientific one, always having in mind that a equilibrium must be reached between the two. Without this balance each one of these profiles becomes useless.