Rands posted an article today about a type of engineer that I like to call a castle builder. Basically, a person who owns one critical piece of functionality for a system, never lets anyone else work on it, and thus have ensured themselves not only job security but also the right to go about their work basically untroubled. This type of person is the worst sort of software engineer. In the article, Rands talks about how this person, who thinks they have ironclad job security, is on the road to getting fired because other engineers are secretly working on code to replace his and thereby make this engineer’s closed system and the engineer themself obsolete. What I find interesting about the article is that I nearly always find myself in the latter category by instinct. If some person I work with has written something that they don’t want to share, my gut instinct is always to rewrite it and get management to throw out their stuff and use mine. Always. Sometimes that instinct serves me well, sometimes not so much.