Tuesday, July 26, 2005

Are IT developers second class?

Joel Spolsky wrote a new article the other day. For those who don't know(probably all of my audience), Joel Spolsky is a hugely successful software developer. He worked on Excel for MS, and is now one of the owners of a startup software company, Fog Creek Software. If Joel didn't have his company in New York, I would be pestering him on a daily basis for a job. Look at what his interns have been working on this year: Fog Creek Copilot.

Most people agree that Joel knows his stuff when it comes to the software development industry. In fact, along with Eric Sink, Joel is one of the people I aspire to be.

This time, though, I think Joel made a few remarks that he is going to regret. I've already seen two articles bashing Joel for his (somewhat insulting and poorly thought out) comments. The article is entitled Hitting the High Notes.

Here are a couple of the quotes that have generated a response:
Is software really about artistic high notes? "Maybe some stuff is," you say, "but I work on accounts receivable user interfaces for the medical waste industry." Fair enough. This is a conversation about software companies, shrinkwrap software, where the company's success or failure is directly a result of the quality of their code.

Sadly, this doesn't really apply in non-product software development. Internal, in-house software is rarely important enough to justify hiring rock stars. Nobody hires Dolly Parton to sing at weddings. That's why the most satisfying careers, if you're a software developer, are at actual software companies, not doing IT for some bank.

Now, for the responses: Scott Reynolds and Phil Haack.

I have to agree with both of them. I have worked as a corporate developer, and while I much prefer working at a software company, my job in an IT department was just as important. One example is the little FTP client I wrote that handled moving critical data from one server to another. The process was originally carried out by hand, and was error-prone. I whipped up a little app that handled the load for us, and we never had another file get missed. Now, our company didn't go under because those files got lost, but we did get a lot of complaints from our employees about the stale data.

Am I any better of a programmer because I now work on software that is sold? To be perfectly honest, although our software is the product that drives revenue, we don't sell it per se. We sell a service, which is only possible because of our enterprise software. The reason we make so much money(70+% market share) is because of the software that we make internally. We have never sold our software to another company or individual. Does that make me a substandard programmer?

Ask the people that know me. I certainly can amaze my family with my applications. Granted, there aren't any commercially viable applications that I have written alone, but they are all of great value to my family and friends. How much more talented do I need to be?

What about the developers at Microsoft who work on their internal products? Are they second class as well? Someone at MS has to work on their current source control system(which they don't sell, and which doesn't even have a publicly available name)? Are they second class? The are arguably as successful as Eric Sink, with Vault, but they don't sell their software.

I think, Joel, that you may need to reword your article a little. It may be harder for you to find that talent in the future, since you are going to be getting at least some of those resumes from IT-type developers who are interested in trying something new.

No comments: