Who Owns Deployments - Dev or IT? 152
txpenguin asks: "I am IT manager for a small software company. We host several generations of our applications in a fairly complex environment. Our systems are very much inter-dependent (clustering, replication, heavily loaded, and so forth), and bad changes tend to have a domino effect. Additionally, it seems that there are always those who need to be 'in the loop', but aren't aware of changes which affect them. There is a constant battle between IT and Development regarding who should handle the deployment of new code releases and database schema changes to production systems. Dev doesn't understand the systems, and IT does not know the code well. How do you handle this at your company? What protocols seem to work best? Can there be a middle ground?"
Re:Speaking as a developer (Score:3, Informative)
Production Services (Score:3, Informative)
The alignment of the Production team varies. At some companies they report to the development organization (e.g. to the Manager or Director of Software Engineering) and at other companies they report to Quality Assurance.
I would suggest that you check out the site: http://cmcrossroads.com/ [cmcrossroads.com]
From a Dev Guy (Score:2, Informative)
Basically, to answer your question: IT should handle code deployment, but developers should be involved in the process.
Re:Dev owns the deployments (Score:3, Informative)
So what about someone like me in the banking industry? You have any idea how long and hard the auditors will bitch if there isn't a separation of duties? Technically the developers are not to have ANY access to the production environment above that of an end user. (operative word being technically)
Re:Middle ground (Score:4, Informative)
--Mike
Re:Speaking as an IT coordinator (Score:3, Informative)
In a previous job, we had three groups: development, system administration and application management & testing. Development would put the deployment files in a share and then sysadmin would take over, deploying it to acceptance and production if fiated by application management. If something went wrong, development would create new deployment files in a share. Sometimes when deployment was quick 'n' dirty, a developer would walk through the deployment with a sysadmin.
However, it took a very strong head of sysadmin. His manager would try to order quick 'n' dirty things, but the head of sysadmin would take it up higher to the boss. I heard once that when he got refused by the boss, he walked straight out of the door saying he'd quit. Boss ran straight after him