R.S. Riley's Software Sense

  • Increase font size
  • Default font size
  • Decrease font size
Home Articles Project Management Hiring Good People

Hiring Good People

E-mail Print PDF

interview-smallHiring good people can be one of the most if not the most important thing you can do to ensure a quality technical solution is produced that will solve a business need. I generally look for traits that fall in a few broad categories: technical competence, how well the individual fits into the team and the ability to prioritize tasks with respect to business/project needs.

Don’t Just be a Keyword Matcher

Most people are aware of the technical competence aspect of hiring a team, but still may have had some bad luck finding people that really know what they're doing. When looking for people, don't be a simple technical keyword matcher.  Most professional recruiters do this when screening individuals and often end up sending you people whose greatest skill is knowing how to find out what the hot technologies are and plopping them down on their resume.  Be smarter than this.  Keywords are important because they may indicate some knowledge with a particular technology but rarely tell you anything about the quality of the individual.

Look for a Passion for Technology

A common trait running through almost all of the best technical people I’ve encountered is that they have a true passion for technology - they don't just do it for a job, they have all sorts of side projects cooking.  They would be doing this type of work even if they weren't getting paid. Technical people who have side projects and/or a background in a variety of technologies tend to take a lot of pride in their work and are often among the most technically skilled on a project.

Detect and Filter out Difficult Individuals

The ability for a technical person to successfully work as part of a team is very important to project success and team effectiveness.  I've worked with numerous 'difficult' individuals over the years and have to say that although many of them excelled in a technical capacity, they prevented the team from living up to its full potential, and thus increased project risk.

When interviewing people, I like to ask questions that will detect if hubris will interfere with their judgment or fail to allow them to admit a mistake. There are a LOT of individuals who simply won’t admit when they don’t know or remember something. Additionally, there are many out there who blatantly lie on their resume and then attempted to bluff their way through parts of the interview.

When I detect a certain level of what I call B.S syndrome, a red flag immediately goes up. If they are acting like this now, why wouldn’t they behave in a similar manner when they’re on the job? When you need something out of them and they don’t know the answer will they simply give you the run-around? Thanks, but no thanks.

Look for the Ability to Prioritize

What your business needs is much more than an individual with mere tech and social skills. You need to have people that know how to prioritize their tasks with respect to what is important to the project (and thus your business) success. Looking for prioritization skills is more of an art than a science.

Based on my experience, for a developer/technical person to even really recognize that they are there to fill a business need is a bit unusual. There have been numerous times where I have simply amazed at how otherwise intelligent people can fail to see the big picture - how their job is important in the overall success of the project.  I like to phrase it as the 'Why are we here?' question.  For instance, 'Are we here to ensure the system responds 1ms quicker per transaction? If not, then why are you wasting days on that task rather than working on something that really matters to project success?' Too often, tasks like this come about because it would be a technical nicety, but not something that helps solve a business need.  I've seen numerous people get ‘hung up’ on trying to get some technology into the product, while failing to see or understand that the technology they are implementing will have negligible effect on overall project success.

So this gets to how you can tell if the candidate knows how to prioritize their tasks in the order of importance to the business. Of course you can’t give them a standard question like ‘You have to deliver on Friday, but there is a nifty feature you'd like to put in the product – the feature is not required and may delay delivery. What do you do?’ This may be a bit simplified, but there are similar questions out there - questions that seem like they are really screening the individuals, but in reality just lead them to the 'right answer' and don't really tell you how they will perform once they get on the job.

You have to ask questions that are a bit more open ended. Once you do this, determine if their answers align with what you think is important to your business. For example: 'We have some requirements for this particular area of the project, and want to know when you can have it implemented.  What do you tell me?  How will you implement it?' These questions are intentionally open-ended and allow the candidate to really think about the situation. What you need to look for is: Do they mention a process (formal or informal) of asking more questions to you so they can get some firm requirements? If they don't offer it, when you ask them how they will do the tasks, what do they say?  Will they prioritize?  How will they know how to prioritize?  Think to yourself about what role you see them playing on the job. Then come up with some questions relating specifically to tasks or situations they will find themselves in.

Ensuring a Candidate is worth Hiring

Technical competence, team skills and the ability to prioritize are all critical skills needed by people on technical teams. When conducting the interview or even when screening the resume, look for clues for how the candidate measure up in all of these aspects. As a final note, I'd also recommend you have different people from your business involved in the interview process - it always helps to have another viewpoint, especially when it is something as important as growing your team.

In Summary, Look for

  • Technical Competence (Normal tech questions, but also side projects, real passion for tech)
  • Ability to get along with the team
  • Ability to put their ego in check, admit they are wrong and not try to B.S. topics they don’t know
  • Ability to take advice of others
  • Ability to make the rest of the team better by helping when needed
  • Understanding that they are there to help solve a business need
  • Ability to prioritize around what is important to the project/business

Robert Riley has been developing software professionally for 10 years in several industries (both direct and as a contractor).  If you are interested in contacting Robert, simply send him an email at  This e-mail address is being protected from spambots. You need JavaScript enabled to view it .

Share Link:
Bookmark Google Yahoo MyWeb Del.icio.us Digg Facebook Myspace Reddit Ma.gnolia Technorati Stumble Upon Slashdot Yahoo Bookmarks