I'm a programmer,
The only times I dislike my job are when people say they want X, then when you demonstrate it to them, they say what about 'Y'?
Absolutely boggles the mind, I'm no longer allowed to do demonstrations. I've told clients they're idiots too many times.
Aside from that solving problems is very rewarding, and i get to to spend most of my day at my desk thinking