One of the problems I find, is when a new employee joins a "programming" department they may well be able to write code, but they won't understand what it does. Ultimately you learn to code because you want to write programs - however if you have a CS background you are able to comprehend different paradigms more easily.