You too probably have questioned hiring decisions in hindsight. It is difficult to decide in a few hours whether a developer will be a good fit on your team. To avoid buyer's remorse in the future, consider developing an interviewing strategy. You have strategies and methodologies for building software, so doesn't it make sense to follow a process for hiring the people that will build those systems?
Interviewing has become more challenging because our technical world has become increasingly complex. Back in the good old days when I was a mainframe programmer, the IT world was very confined. I would simply memorize common COBOL, CICS and JCL questions and confidently smile as I answered all the anticipated questions.
To find out more about how today's IT world has changed, I spoke with Heather Wiley, director of human resources for SourceFire, a network security company based in Columbia, Md. I asked her to list some technologies a developer has to understand to pass muster in Sourcefire's interviews.
"We work with a combination of development and network technologies such as Linux, C, Perl, HTML, Bash, RDIX, 802.3 Ethernet, IP, ARP, TCP, UDP, ICMP, SMTP, HTTP, POP3, IMAP, FTP, etc.," said Wiley.
Wow -- acronyms galore! I certainly wouldn't be smiling if I were a developer interviewing these days.
Of course there is more to consider than whether a candidate can list a bunch of acronyms. A candidate must fit holistically on your team. Find a balance for your team that will work with the right mix of technical and soft skills. More important, identify the warning signs of someone who looks good on the surface, but might be trouble brewing underneath.
Building Balanced Teams
As you fill each position on a technical team, work toward striking the right balance of experience. You don't want a staff of all conservative gurus who may end up butting heads. Likewise, you don't want a junior staff of risk takers who may end up sinking a project by usurping your methodology.
Wiley suggests managing your risk by hiring a mix of experienced people and raw, smart people that could yield a diamond in the rough.
"A developer with 10 years of C should be a good mentor with impeccable technical skills," says Wiley. "They are like bait that will draw in the less-experienced programmers, who are hungry to learn and have the raw talent to grow quickly. We are extrapolating a very imperfect science of how long it will take to ramp up, but we have found it worth the effort."
Define Interviewing Techniques
Once you have your candidate sweating under the spotlight in an interview, you need a consistent plan of action that all interviewers can easily follow. Wiley likes the one-on-one interviews because being ganged up on by a group of overzealous developers can intimidate an otherwise qualified candidate.
On the other hand, one-on-one interviews can result in the same questions being asked over and over. Providing a plan for what each interviewer will cover in either situation will provide more consistent results. For example, have one person cover developer tools and another cover network protocols.
"We also share feedback between interviews, providing advice on what areas might need explored more deeply," says Wiley.
Once you get past their technical know-how, Wiley believes it is critical to evaluate their design capabilities.
"We need people that can code, design and understand our methodology," says Wiley. "ISO standards process experience is just as important as someone's Linux development background."
Industry experience, or at least market awareness, also is a major plus. "We look for developers who read trade magazines and who can quickly determine that Intrusion Detection Systems aren't hot, but Intrusion Prevention Systems are very hot," Wiley says. "They must be able to translate that knowledge into their overall design strategies."
As for written versus verbal testing, Wiley again recommends a balance.
"Some people perform great on written tests, while others don't perform well with people face to face," says Wiley. "I don't recommend screening out people prior to the interview process based solely on a technical test. Don't focus on how to rule out a person, but instead on how we are going to find a good person with great potential and keep them for the long term."
Focus On Soft Skills
When I asked Wiley to recommend three soft-skill traits, without hesitation she said, "Teamwork, teamwork, teamwork!"
She adds, "I can't emphasize how important working within a team is in our environment. We look for a high degree of professionalism and interpersonal skills."
I think Wiley is onto something, because in my experience technical hurdles can be overcome, but a project can fall to pieces from turmoil within the team.
Developers don't necessarily have to be members of the Toastmasters, but they should be able to easily communicate among their own kind -- other developers and their manager. Well, maybe managers aren't always their own kind. Regardless, it is most important that developers be able to take constructive criticism from their managers.
"My biggest struggle is with people who can't delineate the difference between professional criticism and personal attacks," Wiley says.
To identify this potential time bomb in a candidate, Wiley uses behavioral interviewing.
"Ask how they would handle a difficult situation, like when they were involved in a design project where their idea was shot down," says Wiley. "Pay close attention to their demeanor as they answer the question. Were they defensive or positive about the experience?"
Look For Warning Signs
Let's say you found a candidate that aced all of the aforementioned interview factors. There is still one more key consideration to prevent a regrettable decision. You must look for the flash instances where a candidate lets their guard down. Wiley believes these are the moments that foreshadow telltale warning signs.
"Candidates sometimes forget that from start to finish, they are interviewing," says Wiley. Keep an ear out for off-color remarks, extra jittery non-verbal cues, or denigrating remarks to the receptionist.
"At lunch a candidate once ate French fries from the interviewer's plate!" says Wiley.
If your hiring manager and team are on board with your interviewing strategy, then the candidates you hire will fit nicely into your team and cause less second-guessing.
Now, are you going to eat that last fry?