Kenneth P. Turvey said:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
I would guess this is probably true, but not for the reasons you would
think. Contractors are usually held to higher performance expectations
which many managers tend to interpret as simple throughput without
regard to quality. I suspect if the manager is good (and able to tell
the difference), contractors are probably as good at producing quality
code as their permanent employee competitors.
In some cases, contractors are better than existing employees for
certain tasks. They may bring specific skills, or a better training
system to the party, for example. For this to happen, you have to have
good contractors.
Alodar, for example, gives its employees a week of offsite training a
year, and we are expected to also take on internal development projects
to learn new technologies. Very few of our clients provide this level
of training to their employees, which means that we may bring knowledge
of three or four object relational mapping systems to a task, or three
or four web application systems, while their own people have only used
the one that the company has standardized on.
The flip side, of course, is that the employees know their own system
better than we do. That is a appropriate - we are each providing
something to the task. When implementation time comes, we each have a
role, if we are doing our jobs right.
In addition, if we do our jobs right, we transfer that knowledge to the
employees before the job is done. We trust that we will learn enough
new on Alodar's nickel before the job ends to justify future work at the
client - once they know what we know about Hibernate, for example, we
have learned about Subversion, or Java 1.5 migration issues.
Since we would prefer to have multi-year contracts, we do try to write
code we are willing to see again. Further, since we may be hired back
to maintain an app we wrote years ago, we have a strong incentive to
make it transparent.
I have had to repair code written by people like you describe. It is
not fun. Potentially lucrative, but I would rather work on making the
good into the great, rather than the awful into the acceptable.
Scott