My experience has been that without some of the real meaty knowledge that only comes from studying CS, you don't realize what you're missing until you work with other people who have the background. Pairing up, seeing them use abstractions that fit the problem perfectly is an eye opener. The theory helps. I've been shoveling my way through CLRS and learning haskell in my spare time, and both of these things, while not directly relevant to the problems I solve day to day, definitely improve my code.
And of course, when looking for new jobs, the right degree never hurts as far as where you go on the resume pile.