What to Look for and How to Look for IT
The interview process, whether it lasts a couple of hours or a couple of days, is an important first step in establishing a relationship with a prospective employee. Software developers are in high demand; the interview is as much your chance to sell the candidates on your organization as their chance to show you their skills. During the interview process, three types of skills are examined: the candidates' technical skills, their business skills, and their behavioral skills. In addition to one-on-one interviews, having a candidate interview with a group of your current developers can be very insightful. Since most development involves group interaction, there's no better way to start evaluating this than during the interview process.
The technical skills segment of an interview is where you start to categorize a candidate's technical skills. Many candidates list a broad range of technologies on their résumé. You need to ascertain in which technologies the candidate is really an expert, rather than simply familiar with the terminology from reading an article two years ago.
Last but certainly not least important, the interview is a good chance to start evaluating a candidate's values and seeing whether they align with those of your organization. The following sections discuss what many development organizations categorize as winning and losing values, along with sample questions you might ask a candidate.
A good software developer needs to be able to take initiative. No organization can afford to simply have software "factory workers" to whom you hand detailed requirements and from whom you later retrieve perfect code. Will the candidate run that test one more time just to be 100% sure the program is operating correctly? Will he or she look for ways to improve the design? There are countless ways in which developers' initiative can lead you to more successful software.
A good developer needs to be designed to fit his or her work. There are likely to be times when your project will require extra dedication from each developer to meet an upcoming schedule milestone, solve a difficult bug, or meet some other constraint.
Other winning values to look for in developers:
Just as there are winning values to seek out in software developers, there are definitely losing values you should avoid:
- Individual contribution at the expense of the team
- Solitary developmentnot talking to anyone or asking for guidance or input
- Proprietary knowledge and ownership
- Strict organization structure and hierarchy
- Risk adversity
- Purist attitude
- Superior attitude