Victor's Tech Blog

Thoughts on software engineering

0 notes

Advices for hiring engineering talent

Originally posted on: June 16th, 2008 

Recruiting software professionals for a new technology is difficult. Coupled with a general job-seeker’s market and a region short on technical talent in general results in an even more serious problem. Such was our experience with one of our New York City-based clients; the particular technology in question was Ruby on Rails (RoR).

As with every challenge, there are ways out, and it can be turned into a big opportunity. In fact, since most companies will face the same problem, the opportunity to solve it will be all the better.

Here are the approaches that proved successful for us.

1) Recruit people without explicit experience in the particular technology, but who are totally capable and eager to learn it

Almost all of the strong RoR developers around had a job or enough contracts. What to do, stall the project or change the technology? Not the smartest thing to do.  Our approach was to get promising people, with a background in related technologies - in this case, PHP and other Object Oriented Programming languages. These developers learned Rails quickly and were able to surpass our expectations.  Interestingly enough, this principle runs counter to some people’s advices advocating only hiring people with at least a Rails project in their portfolio.

2) If faced with a choice, get someone with a lot experience and skill in a similartechnology, over someone with a little experience in the same technology.

Unfortunately, some of our offshore consultants were in the second category - that is, they had some Rails experience, but their overall web development experience was low. Fortunately, we made the opposite choice when we recruited the on-site people. A developer with significant background in PHP, CSS/Javascript and databases proved to be an exceptional Rails developer in a short period of time.

Which brings us to the next point:

3) Do not underestimate the teaching power of the web

A lot of technical problems have been already solved, and chances are someone out there posted a description of how to do it. A significant number of programming constructs (plugins, modules) have already been made. And for Rails, the web community is so good that often all it takes to uncover how to do it is a simple Google search. Therefore, knowledge of the specifics of a particular technical language has become even more irrelevant - and someone who has a strong understanding of the principles is the best asset.

4) Recruit people with communication skills. Encourage and grow communication skills.

It is common to assume as a given that IT professionals lack good communication skills, but that doesn’t need to be the case. In fact, particularly if the development methodology is intended to be Agile, the assumption is unacceptable. If there is a need, management can (and should) set up processes that will encourage better  communication. We were able to get people with both technical abilities and excellent communication skills at the same time and that was instrumental to the success of the projects.

5) Engage technology professionals in the hiring process

It is tempting to try to delegate the candidate search to recruiters, whose sole job is to look for people. Yet sometimes with new technologies it is the developers themselves who can be more successful at getting new hires. Through their memberships in various online communities, personal networks and knowledge of specific job boards, excellent referrals can be obtained.

Conclusion

In conclusion, not starting or stalling a project just because people with that particular skill set can’t seem to be found is not a solution. Lost opportunity can be a lot more costly. A good principle is to look for people showing the general traits of adaptabilitypassion for technology, general technical ability and work ethic.