Training new developers like you were a loan shark

Invest into new developers early to reap compounded returns.

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.