Couple of quotes from one of very few blogs I follow since number of years:-
The traits of work that makes someone happy:
1. stretches a person without defeating him
2. provides clear goals
3. provides unambiguous feedback
4. provides a sense of control
Your level of optimism and quality of relationships impact your level of happiness more than your job does.Obvious I guess. But of late I am finding that stating the obvious is an eye opener sometimes.