Programmers

The more demanding the task, the more vital it is to have good programmers. If you were looking for a good architect, engineer, or designer, you would probably put more value on what they'd created than what they said. This is a good strategy with programmers, too. Check out prospective programmers' recent projects, look at a few excerpts of their code, and have them explain what they've done. Rogue coders can bring down an entire project, so if a programmer is unable to demonstrate the competence they promise, act on your instinct and draw back.

If you do hire a dud programmer (and many of us have done it), you'll end up with unusable code, a sour team, lost time, and your budget shot to ribbons. All you can do is show him the door as fast as you can and put his code through the shredder. When you have a good person, you'll know it, and so will the rest of the team.

Tip In choosing a programmer, if you have to weigh niceties to arrive at a decision, you are already on to a loser.

The following are signs that a programmer may be less competent than they purport:

♦ They hold a view that the answers usually pop out during coding.

♦ They get bogged down in seemingly trivial tasks.

♦ Their work is indifferently documented.

♦ They are slow learners.

♦ They prefer to deal with bugs afterwards.

♦ They demonstrate an inability to supply satisfactory explanations.

♦ They use eloquence to mask weaknesses in their work.

♦ They never admit mistakes.

♦ Their production rate is unexpectedly low.

♦ Their code regularly fails quality reviews.

Contrary to the popular myth that good programmers are unintelligible geeks, they are normally quite the reverse. A strong analytical mind means they can communicate complex ideas simply as well as consider problems from many different perspectives. Good programmers possess the following skills:

♦ They have excellent abilities to plan structurally.

♦ They document their progress systematically.

♦ They have thought out the answer before they begin.

♦ Their vision is based on knowledge.

♦ They rarely need to redo their work.

♦ They care about the quality of their code.

♦ They know from experience when to take a risk.

♦ They produce the goods.

Table 6-1 lists the positions you should fill given the size of your software house.

Table 6-1

Positions Commensurate with Company Size

Size of

Software

House

Programmers

Technologists

Development Manager

Contractors

Individual

Yes (it's you)

2-12 (Small)

Yes

Maybe

Maybe

2-12

Yes

Maybe

Almost certainly

Maybe

18-30 (Med)

Yes

Yes

Yes either/or

Probably

40-1,000 (Large)

Yes

Yes

Yes

Yes

Probably

1,000+ (Corporate)

Yes

Yes

Several

Yes

Probably

0 0

Post a comment