You Need the Best People

This is a business cliche, but it is especially true with software development.

Average people won't cut it. You need above average. Anyone else will just get in the way of the good, productive programmers.

Resist the urge to hire quickly because you're busy or behind schedule.

A bad hire will grind the gears and delay the project even more.

Be patient and wait for someone good to become available.

When you find that perfect person, enter a "trial" contract where either party can leave with no hard feelings.