I work for Carnegie Mellon University (map), in the "Infrastucture, Services, and Middleware" group.
I build random big software systems that other people will use. Well, I don't build them by myself, I'm usually on a team. And, they're not really random, they're assigned to me by management.The first one was the web publishing system currently in use for www.cmu.edu, sort-of the opposite of a CMS on steroids (ie. if you put it on steroids, you could call it a CMS). It has rudimentary support for workflow and roles (eg. writer, editor, reviewer). Had to write a few custom Apache modules m'self to get it all to work, that was great fun (really, no sarcasm).
The second one was the next-generation accounts-management system. It's a sort of LDAP editor on steroids, implemented as a web application. Had to learn enterprise-level Java programming for this one. I actually ended up writing my own JNDI service provider, complete with object and state factories. That was great fun too. My job is fun.
The current project (as of 2003/May) is CMU's "portal", a "my.cmu.edu" of sorts. My specific current task is to help build the campus event calendar. Someone else is doing the database guts, and another someone else is doing the UI design (I'm an engineer, you wouldn't want me to do it). I get to glue it all together, into the portal. When JSR 168 is finalized, I might get to do it all over again.