I do the same... and i guess i am burnt out by lack of interesting and consistent work to do.
aspects of my job I absolutely hate:
Maintaining a DLL( or shared object) in a large piece of software where my team's scope is so narrow that we are just a conduit between two other processes. bugs get introduced by behavioral changes from upstream or downstream.
No real exiciting problem to solve.
I learnt Compiler design, Complexity theory, Concurrency, Algorithms, etc in college. But I look at bad code that does if (boolvar) return 1; else return 0;
Constantly get shuffled around on tasks by my manager who goes into panic mode if his supervisor asks about something.