Get DevOps Right with Cultural Transformation
Translating DevOps into workable culture is easier said than done. Many organizations have faltered in implementing DevOps because systems and processes are not aligned. In fact DevOps is not only about tools and technologies as much as about workflow and culture which is why we refer as DevOps practices.
Ushering in cultural change to facilitate DevOps is not a choice. If organizations want to leverage DevOps to take advantage of rapid innovation, faster time-to-market and start-up culture, agile methodologies must pervade the organization. Many organizations have recognized the merit of agile methodologies to spur transformation—yet there is a gap between perception and reality. According to the annual report on software development based on survey by GitLab in 2018, differences persist between managers and developers about the progress of DevOps
implementation—managers tend to be more optimistic about DevOps implementation while developers are unclear about the directions to get work done.
Discovering flaws at the time of release takes the development cycle to the starting point where teams are iterating code from scratch defeating the purpose of DevOps.
Implementing DevOps Culture
Can organizations overcome implementation challenges? With a carefully thought out systematic plan, organizations can successfully bring about cultural change. DevOps implementation calls for uniting development, operations and security teams to automate processes from ideation to production. It seeks to bring about seamless collaboration, reduce technical debt, remove inhibition and encourage developers to think and ask questions. These changes significantly impact the way organizations control development processes.
Moving from end of the line to front and center of the process, DevOps culture embed control at every stage of development. This enables to review and iterate code continuously to deliver superior products collaboratively designed by the team.
Managing this shift calls for meticulous planning specific to each organization. Umbrella has helped many organizations effectively achieve speed at scale while managing risks using following methodology.
Four Pillars of Getting DevOps Culture Right
1) Culture: This assesses the motivation and sentiment of the organization to adopt DevOps processes exploring questions such as who makes decisions to release applications; how teams share and collaborate; governance structure and awareness levels about automation; infrastructure configuration and management. DevOps workflow must ensure visibility between teams to facilitate transparency and promote knowledge sharing . In many DevOps-enabled organizations visibility and transparency continue to be a challenge and GitLab report validates this.
2) Automation: This is assessed to understand speed in flow of information and know the readiness with regards to configuration management, application testing, release and deployment. It examines practices such as code review; code sharing amongst teams; security testing; version control; roll back process; application monitoring
tools and processes.
3) Structures and Processes: Organizational processes and methodologies with regards to readiness for continuous delivery examining processes for application release; internal DevOps practices; whether development is outsourced or in house; regulatory requirements; internal dependencies to manage release; involvement of other departments such as finance, legal, sales & marketing; handling failure; who manages production environment.
In our experience inter-department involvement especially legal is crucial in large organizations for compliance and regulations, which often becomes a cause for roll back.
4) Measurement: This is important for continuous improvement and seeks to understand how quality of code is defined; user feedback collected and how success of a new release assessed. Based on the above parameters Umbrella assesses maturity stage of the organization; identifies gaps and strengths and designs a roadmap to facilitate changes to take the organization to next level of maturity.
Our experience has shown successful transition to DevOps culture is facilitated by best practices which includes:
a) Endorsement by top management and adoption at the operating level, encompassing every individual in the team.
b) Enhanced levels of trust wherein development, operations and security teams understand requirements, has a shared vision of goals and collaborate to bring that vision to reality.
c) While automation releases bottlenecks that throttle speed, embedded quality control processes validate quality and manage risks effectively.
d) Continuous focus on improving and continuous integration makes DevOps work better. This must be supported by flexible systems to test and iterate.
e) Teams that ship small amount of code fast do better in DevOps practices than piling up codes which makes it harder.
Software development cycles are getting faster and developers must be supported with a work culture that encourage collaboration, sharing information and takes onus of quality with continuous improvement.