I think I should develop a recruiting business. Or develop a business that needs to do recruiting. My secret trick will be to do actual meaningful reliable evaluations of prospective software engineers, instead of trying to do a good curve fit of a complicated system with only a few data points. This will bring quality hires and happy money. How to do this? Some ideas:
Start by trying to be uniform and objective, weeding out those who don't meet a baseline breadth and depth for the position of interest (or have the position of interest be suggested by how well they do on the different areas: instead of dropping the person completely for a total low score, drop them from consideration just for the particular areas that they scored low on), while not rejecting people based on a few random problem questions.
(0) Set of simple technical questions on the web, multiple choice maybe, with instructions: "If you can't answer all of these correctly within half an hour, without looking anything up, then you would not pass our interview process and should not submit your resume." To get to the resume submission page, they have to click a box saying "I correctly answered all of these questions within the stated constraints."
(1) Set of less simple technical questions, progressively harder, eventually so hard that most people couldn't answer all of them correctly, covering areas relevant to the position and the applicant's background (such as preferred language). Multiple-choice or otherwise machine-scored, so no expensive human time wasted. Applicant comes in, spends a couple hours answering on a computer. Computer scores immediately. All under a certain threshold are automatically dropped. Others can continue with the next round after a break. Correct answers to multiple choice questions could have an additional auxiliary question and set of choices, which approach the same thing from a different perspective; both must be correct in order to get credit, cutting down on the number of correct answers resulting from chance.
(2) For those who passed (1), anything they got wrong in (1) they're allowed to look up in the provided standard books, giving them a second score. All with scores under a certain threshold are automatically dropped.
(3) For those who passed (2), some coding problems are assigned. Applicants use the provided machines with standard compilers/documentation/OS/languages (which they can practice on any time prior to taking the test, to get comfortable with it). Books and other resources are available the same as they would be in real life. Sample input is provided, with corresponding expected output. They're instructed to make it as robust and reliable as it should be in production code. After they're happy with their code, feed it more input, including typical cases, special cases, huge cases, and malformed input. Score based on: builds; compiler build warnings; correct output from sample input; proper handling of any exceptions that might be thrown; correct output for each run of real input; lack of crashes; time taken to complete; presence of at least some comments. These would be automatically scored by All with scores under a certain threshold are automatically dropped.
(4) etc blah blah
Those that make it to this point have at least a reasonable baseline of abilities in at least one area, with a profile showing their strengths and weaknesses. Any available positions that the applicant meets all the requirements for can then be applied to.
etc blah; more, but i should spend time getting a job rather than grrring at the existing systems. and i'm too tired to focus both eyes at same time.
I often have lyrics go through my head that are somehow relevant to what's going on with me. Not sure what Everlast's "What it's like" is doing in said head. (exact lyrics seem to be subject to debate)
I knew this kid named Max
who used to get fat stacks out on the corner with drugs
He liked to hang out late
He liked to get shit-faced and keep the pace with thugs
Until late one night there was a big gun fight and Max lost his head
He pulled out his chrome .45, talked some shit, and wound up dead
Now his wife and his kids are caught in the midst of all of this pain
You know it crumbles that way
At least that's what they say when you play the game
God forbid you ever had to wake up to hear the news
'Cause then you really might know what it's like to have to lose
Then you really might know what it's like...
Then you really might know what it's like...
Then you really might know what it's like...to have to lose
Activate your armchair.