Hire smart people willing to learn and invest in their training early
Compound interest means interest is added to the principal, growing the entire sum much faster than otherwise we would estimate. While bad for your mortgage / car loan, it could be very useful when applied to training new employees.
Hire people willing and able to learn
The technology is always changing, and anyone not keeping up will probably be a liability in less than a year or two. Please ask a candidate
- what have you learnt this year?
- what would you like to learn next year?
- what's your learning process?
Instead of looking for perfect fit in languages, years of experience, technology stack, look for people who can show passiong for learning, curiosity, and interesting projects under their belts. It could be a school project, open source contribution, small side job. Dig a little deeper to see if the candidate really knows the project, and was not a peripheriral participant just claiming broad credit.
Compound interest learning
Human mind is BAD at visualizing compounded growth. If I tell you, that your new developer improves by 5% every month, and ask how long before he knows twice as much as when he started? 20 months = almost 2 years? No, a little over 1 year, because the 5% is based on the amount already learnt. Here is why very agressive investing in early on the job training pays off handsomely - because it is compounded monthly / daily. Look how fast someone reaches twice the initial level, if he/she is smart and willing to learn:
month at 5% rate at 10% rate at 15% rate
01 100 100 100
02 105 110 115
03 110 121 132
04 116 133 152
05 122 146 175
06 127 161 201
07 134 177
08 140 195
09 148 215
10 155
11 163
12 171
13 180
14 198
15 208
So a 15% per month learner will become twice as knowledgable in only half a year, while 10% per month learner in 8 months, and a 5% per month learner in 15 months. Is this hard to achieve? Not at all: a consistent reading of several text books on the subject plus going through the exercises, discussing with coworkers, making a few knowledge sharing presentations should be enough.
This is why I would hire a smart college graduate who shows curiosity, can talk about a school project at a deep level and can demonstrate aptitude and desire to learn new things, rather than compete with other companies for a "perfect" match.
The best indicator I have seen of a good developer is having a few open source projects, hosted on a public server (github for example). Look over and ask the candidate:
- why have you created or contributed to this project?
- how is it installed?
- how is it tested?
- what was the feedback, is the project popular; and if not, why not?
I honestly feel the existing public project is a much better predictor of a good software engineer than logical quizes or puzzles. If you do give a brain teaser, please discuss the steps with the candidate, the process is more important than the final result.