source | link

You may want inexperience programmers so you can train them to do it your way. This assumes:

  • You will train them; and
  • You have a better than average way of doing things.

You might also want an inexperienced programmer, because you don't require programs that would challenge or interest an experienced programmer. Also if you have have experience programmers, you may be able to challenge them by having them mentor the inexperienced programmer.

An inexperience programmer may have a perspective you need. NIH (not invented here) and WADITW (we alway do it that way) are not always best. Choose someone who will ask probing questions. Be prepared to change your ways.

You may be better off with an experienced programmer, as the may have higher productivity per dollar. Documented productivity ratios are something like 26 to 1. You may be lucky and get a highly productive inexperienced programmer.

If your employee turnover rate is high, you may only be able to hire inexperienced programmers.

If your budget is per head, inexperienced programmers may be all you can afford. This does not mean your project will cost less. It is far more likely cost more. Fewer experienced programmers may be more cost effective.

Experienced programmers bring baggage from prior projects. Some of this will be good, and some of it will be bad. If you don't have the resources to minimize the bad and maximize the good, you may want an inexperienced programmer. They will have different baggage.

You may require skills or knowledge that your experienced programmers don't have, but that an inexperience programmer has. Hire them and do some cross training with your experienced programmers.

It is good to grow talent. Find at least one inexperience programmer for your team. Train them and mentor them. Challenge and support them. Learn from their fresh perspective as they learn from your seasoned perspective.