David Parnas was once asked what he thought was the most often overlooked risk in software engineering. His answer was “incompetent programmers.... One bad programmer can easily create two new jobs a year. Hiring more bad programmers will just increase our perceived need for them. If we had more good programmers, and could easily identify them, we would need fewer, not more.”[1]
That was harsh. As usual, though, he is correct.
At this point in my life I think I must have interviewed over 300 candidates for various positions in software development. I have hired dozens of co-op students, and made the hiring decisions on countless permanent positions. I have also fired three people. I only had employees at Backstage from 2005 to 2010, so why all this experience in hiring and firing? Somewhere early on in my career it became known that I was good at the difficult job of appraising the technical skills of applicants. Because of this skill, my previous employers asked me to become intimately involved in the process of assessing the talent of potential employees.
The technical screening interview consists of a twenty minute conversation where I attempt to verify that the applicant is competent, and that his or her resume is, in fact, truthful. Depending on the position we were hiring for, I had managed to boil the interview down to one simple question—answer it, and you could work for me. It was rather disheartening how many computer scientists were unable to answer it correctly.
0 comments:
Post a Comment