Well I like mental puzzles, I like learning things, and I like feeling like I've helped people. I've been able to do these things as a programmer.
For me the key to not burning out is to get to know people throughout my organization. That gives me a social outlet. That also let's me find small things that I can change to make things better for people - which is generally good for them and makes my job more enjoyable. I also enjoy finding things that I can explain about how the system works which gives them a better idea of what they can and cannot easily do. (I like social interactions and answering questions. And on perlmonks I'm known for being social and answering questions. Hmmmm... ;-)
As a rule I don't like extended development. Which is unusual in a programmer. I don't like debugging, but nobody does. (Which is why I like finding ways to do things which will leave me with less debugging later.) I sometimes enjoy maintainance more than development simply because it gives me a lot of reasons to come into contact with end users, and concrete satisfaction in knowing that I've helped someone.
As for what I do, my current employer is http://www.rent.com. My boss is esh. I got the job through perrin. The programmers here do everything that needs doing at a company like this, and we're all pretty senior. Mostly it seems to involve mod_perl and high performance databases. (At the moment I'm avoiding building some fancy web reports. Despite my best efforts, they are nearly done.)
The least enjoyable work experience that I had was one where my boss tried to isolate me as much as possible on an extended development project. I was bored, boxed in, and seriously stir crazy. Luckily that boss got replace. Since then I've come to accept that while I do not work well with many small interruptions, but I need to deliberately take a certain amount of social time at work or else I'll go insane. But I have to ration out how much socializing I allow myself.
I'll be the first to admit that I could be a more productive programmer if I was less social. But that simply isn't in my nature. And even with that handicap, I'm still productive.
Now there are other things that I could do with my technical background and abilities. However none so far seems to be as interesting and rewarding as programming. But I don't have "programmer" written on my heart, and I doubt that I'll be a programmer forever. But I'll not leave just yet. |