Every environment is slightly different. In comparison, you have to decide what works for you. Amazon for example makes their developers own their own code, which some developers hate, but it is a feature of that environment that keeps bug counts low (when was the last time you saw a bug on amazon.com?).
Others want a tighter QA process so create an operations department to look after deploys, but I've found they tend to create an atmosphere of negativity in the company: they are rewarded by justifying their role, which entails pointing out and supporting the bad things in the World. If the devs are good at their job, resentment can creep in if their pay is in any way performance-related.
Personally, I tend to prefer to look after the whole stack, but increasingly am moving to providers that allow me to worry less and less about hardware (EC2, Heroku, etc.), and to focus more on functionality in the apps. I personally like owning the code and the bugs, as it means I am demonstrably motivated to keeping bug tickets down - every open ticket is a delay to the new functionality I want to work on.
Each to their own.