TOP 3 CHALLENGES
- No Shared Ownership
Most programs typically have Development and Operations as separate teams, with conflicting goals.
The top down goals for development teams are to build features (potentially shippable increments) at short regular intervals so that they can be deployed, with all incentives promoting ‘faster’ build cycle, versus the operations team goals favor operational stability with changes minimized, in order to maintain existing system reliability and high availability, with incentives for reducing operational costs.
These conflicting goals setting lead to development teams “handing off” the code to operations after development, and operations “pushing back” almost every time.
The overall impact is that the feature ‘go live’ date is delayed, with both the groups lacking “shared ownership” for reducing the overall feature delivery cycle time from an end customer view point.
- Physical separation
Development and Operations teams are separated by distance, and mostly do not share the same physical location or work area. Most organizations will have centralized operations teams, possibly across time zones for larger enterprises.
The silo’d physical structure is also carried in the silo’d organizational structures with different reporting heads for both the teams, thus ensuring that local optimizations rule the day, with the Operations team members managing and running multiple applications, in closely guarded areas, with restricted access or interaction opportunities with the Development teams.
How can you relate to someone whom you have never met face to face and never talked? bye bye collaboration !!
- Cultural differences
Cultural differences are visible in the behavior and actions of both the development team and the operations teams.
The lack of trust and transparency on both sides is what manifest in the communication gaps on both sides, with the development team having minimal visibility on deployment activities and feedback on production systems (read infrastructure metrics), and the Real business metrics and similarly the operations teams having minimal visibility on what is the expectations on the features wrt. scalability, run books, or reliability that they should care about to maximize the applications potential and operate as expected by the development team.
The lack of shared evidence and the missing Shared ownership clearly comes out and creates a sense of mistrust and results in overall delivery delays.
“The developer and operations divide in IT is almost like humidity at times. You can’t see it, but you feel it,” – This quote from the Starabucks devops post sums the challenges….
what are the challenges do you see in your devops journey?
Look out for my next post which will try to address possible solutions for these challenges…