by Zoe Lu
Late last year, I attended DevOpsDays Sydney 2016 Conference. This confrence aims to have all participants, learning and sharing ideas of adopting DevOps practice.
The conference was entirely organised by volunteers, from the local technical community and had a very interesting format.
What is DevOps?
According to some points of view, DevOps is a specific methodology, mindset or cultural shift to broaden the focus of how traditional application delivery is executed. It focuses on the collaboration and communication - between departments of development, QA and IT operations.
Why is DevOps important?
Traditionally, within an organisation, delivery process is separated based on a department’s functionality and there is seldom interaction among functional specialised teams. This often leads to a longer timeline for application delivery to be executed and can also potentially create tension between departments.
Modern delivery pipelines are moving fast and the frequency of application deployment is speeding up, in order to match the demand in the market. How can we deliver applications faster, but remain low risk?
Adopting DevOps in an organisation promotes cross-department collaboration, communication and integration, to provide fast feedback loops between teams and continue learning and experimenting. This leads an organisation to have a shorter lead time when responding to market demands (new features or bug fixes), lower failure rate of deployment and faster mean time to recover from faults.
In addition to the amazing scheduled talks from local and international speakers, there was a session called “Open Space” This is a free form of discussion/knowledge sharing/brainstorming contributed by all participants. Open space topics were suggested by anyone who had an ideas to share or were seeking solutions to a problem. The topics were then voted by attendees ,with the most voted topics being selected and allocated to dedicated rooms. Attendees were free to come and go between different rooms as they pleased.
What I learnt from the conference?
1. Interaction between different teams
Part of adopting DevOps practice is the journey of addressing confusion between teams. To do so, empathy and communication are needed when it comes to working with people whose mindsets are different from yours. This applies to not only between development and operation teams, but to all teams within an organisation.
Communication:listening to each other and repeating what you hear back to the person who talks will help ensure there is no packet lost between human TCP communication (more handshaking).
Empathy: figuring out what other need, by putting yourself into their shoes and also providing each side of the story, for better understanding. Continuous collaboration and sharing responsibility, provide benefit for both sides to learn and grow together.
2. What is the real issue that needs to be solved here?
Implementing new tools may help solve some technical problems, but without understanding the cause of the issue, the actual problem will last forever. To ask “why?’’ questions is the most powerful and straight forward way to identify what the real issue is from the stakeholders. It is also helping us to connect “what we are working on” to “whether the business will be benefit on this decision making”.
Humans are a very complicated distributed system. All other emerging complexities happen when adding humans as a factor.
We work with not only computers but human beings everyday and try to solve all sort of different problems. Having DevOps mindset helps us to work better toward each other, by switching mentality around and connecting with each other.
After all, the purpose of this conference was to provide our technical community a space to support and learn from each other. It was an inspiring experience for me to see and learn many ideas from people who are passionate about finding solutions, in order to help shape a better future work place, for all people involved in the field.