Have to find new things to do and learn about to keep interest in your life and in your job. Eventually if you never been a manager then that might be an interesting job change. And then working on a different technology and then taking a different role yet again. All these things can keep your interest level up. Imagine if you just sat in a job and a desk and a giant cubicle farm and Shuffle papers and never did anything interesting but prepared TPS reports. We are a lot more fortunate as programmers in that we have a lot of different career opportunities.