Tuesday, April 13, 2010

Work: In-Depth

Ahhh, the ultimate taboo subject. For awhile I've been wanting to give an update on work status, but always chicken out at the last second. I figure it's about time to let it all hang out, what the hell!

I could be working right now. In fact, I just got done doing about 20 mins of misc. stuff. At the core, that's the gist of the problem. I've hinted a few times at the way work is invading my thoughts but it's getting pretty bad. The question is why?

I work on some decently fun software. It's got enough complexity as to be challenging, but not too much as to be completely unmanageable. The core of the application was written in the early 2000's and since then, has never gone through any type of rearchitecture. Piece after piece, feature after feature, bolted on in any way it could be. In the end, the app still functions, looks pretty much the exact same as it did 10 years ago, and is just insanely complicated. (for reference, I started in June 2006)

In 2009, I started up the idea of starting fresh. Rebuilding the software from the ground up using latest technologies, techniques, and platforms. This wasn't an original idea by any stretch of the means. It's just that all the previous people to push the idea had either left the company or were too busy dealing with other things. Those facts, combined with the particular position I am in, made it the obvious choice that I needed to be the next to attempt to push for it.

So for a few months, I started pushing. Trying to gain momentum with some of the engineers at levels above me. It didn't seem to take off. The cost of such an effort didn't seem to have an ROI (return on investment). The software works... if it ain't broke, don't fix it. Shortly after that, I went out on leave while Casey was born and when I came back the momentum had completely died. I chucked my idea as simply a bad idea and went back to the normal daily grind.

Then earlier this year, one of the engineers who helped build the original software started up the effort again, specifically calling me in to help, and in a lot of ways, shutting out all the "naysayers". He could see the cliff we are hanging off, and how badly we need to rework parts of the software. So once again, I decided to give it my all. I've determined the cheapest possible solution, wrote up an entire high level scope document, and prototyped the entire damn application.

Why? Because I care about this software? Because I think it will be that much better? No. For two reasons. First, it would be a lot more fun to work in the latest technologies, and second, because it would be fun to hear the "Wow" factor if it ever actually happened and got released. Oh, I suppose the third reason would also be money. I wouldn't put this much effort in if I didn't honestly think it might actually allow us to retain and get new customers, which in return results in better profit sharing and ideally, better raises.

Did I mention I don't get paid enough for the effort I put in?

1 comment:

Adam said...

Just caught up on the last couple of weeks of posts. Sounds like things are going pretty well, all in all. And I thought I'd share this since you're talking about work:

http://gizmodo.com/5516995/babys-first-cubicle-the-most-depressing-toy-ever

Cheers!