I was thinking today about trends during my career as a professional software developer, and it occurred to me that the overall quality of the work experience at various companies correlates roughly with the level of the hardware developers had for their workstations.
At what I would consider as my worst gig, all the developers had relatively slow laptops with small screens. Fine for other desk jobs, bad for developers. Everything related to development there was pure chaos. For example, once I started working there I learned that everyone had to share a single remote instance of Weblogic for developing EJBs, no local developer Weblogic installs allowed. Worst. Gig. Ever.
At my best gig, I was given a workstation that had pretty fast specs, lots of RAM, a nice big flat-panel monitor, and the workstation was upgraded every nine months or so. That gig was not without it's problems, but we managed to roll out a rather large scale enterprise app without being too late or having to work crazy overtime.
I'm not saying that developers can't be productive without the latest and greatest hardware, but rather that the developer hardware can reflect on the organization's attitudes towards software development. If a business doesn't care about a basic developer need like having a decent workstation, they probably don't place too high a value on developer productivity. There's a good chance that it won't be too keen on higher-level development activities like version control, defect tracking, and software process improvement, either. Of course, these things can be pretty obvious, but sometimes it's hard to find out during a short interview.
So next time you're interviewing as a developer, it wouldn't hurt to casually ask one of your potential future peers what kind of hardware (s)he's got under that desk. You might learn something.
Absolutely! These days, ask how many monitors you get. :) Multiple monitors are a life saver.
Posted by: Paul Mclachlan | April 08, 2005 at 03:27 PM
At work I have to use 1 gig dell machine with eclipse and a weblogic 7sp4 instance but the killer is that whenever we have to debug we have to use -classic in jdk 1.3.1 which means it takes something like 10-15 minutes to start the server. I had to write some code to serialise the contents of some meta data that is generated upon startup because the code literally went out to the database and grabbed the dbmetadata of all the tables used by the database layer. This shaved about 6 minutes off startup times. Of course this step simply isn't necessary unless you've made changes to your schema.
Posted by: Robert Nicholson | April 09, 2005 at 10:51 AM