The end-goal of DevOps is to enable organisations to operate more effectively in the digital transformation age. Adopters benefit from an environment in which building, testing, and releasing applications happen more often, at greater speed, and with less scope for failure. But at its heart, DevOps is a cultural philosophy and its successful implementation a uniquely human proposition.Due to its human element, trust and transparency play a vital role in any successful DevOps adoption.
It may sound stark but DevOps without these two vital factors is often doomed to failure. But why? And how can you create a culture of trust and transparency in your organisation?
DevOps is About Collaboration
If DevOps is about culture and collaboration, then the most important cultural ingredient your team must cultivate is trust.
DevOps often means the blurring of traditional boundaries and responsibilities, so the breakdown of departmental silos is key to success. This is difficult without a baseline of trust between the teams involved.
To illustrate, consider the typical relationship between many Operations and Development teams: often Operations view the dev team as being “the guys who break everything” and Development see ops as being “brakes on progress”. This kind of cultural misunderstanding breeds mistrust and is something any successful DevOps programme needs to overcome.
To get the most from DevOps, your team members should feel comfortable admitting their weaknesses and mistakes, accepting questions and suggestions about their area of responsibility, focusing energy on problem solving and not politics, giving one another the benefit of the doubt before arriving at a negative conclusion, and being appreciative of each other’s skillsets. Above all, they should look forward to working as part of a group beyond departmental boundaries.
It’s a long list but these qualities are integral to building a trusting environment and, in turn, a fertile bed for collaboration. Without trust that everyone has a voice, in an environment that’s open to discussion, you may never get to hear that great idea your developer has for improving the product. Likewise, if one of your teams doesn’t feel comfortable flagging issues or suggesting improvements to the other, you’re unlikely to end up with a superior product at the end of the process.
Transparency is the Bedfellow of Quality
Like trust, transparency is vital to DevOps. Ineffective communication and siloed teams can lead to poor visibility, which does more than just erode trust; it’s also a real hindrance to collaborative, agile working.
If you can quickly check what a co-worker or team is working on and what their workload looks like, it cuts out laborious back-and-forth. It’s easy to see where your task lies in their list of priorities and, consequently, easier to put an accurate timescale on delivery. It’s also easier to identify potential bottlenecks and brakes on the project before they happen. On a purely practical level, it’s also essential for effective bug tracking.
All of which encourages accountability and means everyone in your team has a good view of the whole organisation and how each team’s tasks intersect. This makes it easier for everyone to focus on overarching business goals, rather than the myopic outlook siloed departments can breed.
How are Trust and Transparency Bred?
We’ve outlined the role of transparency and trust in DevOps and even sketched out what it looks like, but how do you build these qualities in practice? Of course, every organisation is different and what works for you might not work for the business next door, but here are a few tips for breeding these two elusive qualities.
- Establish a common language for DevOps: Development and Operations teams often speak a completely different language. For example, developers often reference code and tickets filed in systems like JIRA to track requests and bug fixes. Whereas Operations often know the issue by name or by its reference in their own system, creating a communication gap. Left unchecked, this can result in confusion around release dates, project progress, and a lack of transparency. So, it’s important you establish a common language that all parties can use when discussing projects, whether by using another system to act as a middleman or by developing a company-wide lexicon.
- Maximise Daily Interactions Between Teams: Simply increasing the time teams spend together can have a positive impact on trust and transparency. If it’s easy to distrust someone you don’t know personally or work with every day, the inverse is also true: trust is often born of familiarity and regular collaboration. One way to achieve this is to involve operations staff in development meetings at the beginning of application design. You may be met with scepticism at first, but, in time, you should find that as it becomes clear how collaboration early on results in better quality and fewer headaches for everyone, both teams develop a greater appreciation of the other’s role.
- Shuttle Diplomacy: This might sound like the preserve of foreign secretaries, but it can also mean appointing a dedicated liaison for each of your teams. Each liaison acts as an advocate for their team in other team’s stand-ups, group meetings, and project meetings. By doing this, you’ll encourage teams to think holistically, maintain regular discussion, and consider the impact of their day-to-day work on other departments—naturally breeding greater transparency in the process.
In conclusion, it’s worth reiterating that the very nature of DevOps demands that teams can work collaboratively and pull towards a common goal. For this to work, your business needs to foster an environment
VASSIT are experts in the field of digital transformation and have helped a number of organisations, in a whole host of different industries, to successfully implement a DevOps solution. If you'd like to know more about creating a culture of collaboration and navigating DevOps, download our guide.