As in many large structures, work organisation still remains quite siloed even if that is changing. How do we understand the DevOps approach in this context? What is the practical scope for injecting this dynamic into one’s professional life?
Steve, Delivery Manager at Wemanity, is responsible for stabilising deployments and improving deployment processes within a subsidiary of a large French bank focused on consumer credit management. His principal activity involves ensuring the availability and maintainability of internal applications, developing tools and technologies, and integrating new services.
1. Are siloed work environments incompatible with DevOps?
Steve is part of the development team. He explains that the operational part takes place in another entity and that a third entity, a sort of DevOps champion, is responsible for defining the deployment strategy. Even though interconnections exist between these teams, Steve tells us that the work environment is very siloed.
In Steve’s highly specific context, the DevOps team leaves little room for the development and operational teams to join them in constructing strategies, sharing responsibilities and taking the initiative.
For Steve, the silos in which the different teams operate has a lot to do with the banking system itself, heavy with security issues and dependent on strong regulation. Even though it is obvious that we cannot free ourselves from certain constraints, Steve is clear: “that slows us down considerably…”.
Under these conditions, the means of successfully implementing the essence of a DevOps philosophy is far from obvious. Yet it is within the bounds of possibility.
2. Developing your sense of rigour and seize opportunities for automation
Among the important issues in Steve’s mission, stabilising deployments was crucial. Prior to his arrival, deployment incidents were common: “Delivery incidents were commonplace. With almost every delivery, there were problems which resulted in service unavailability, and, therefore, financial losses”.
Today, the reality is quite different since the number of delivery incidents has dropped to… zero.
Specifying that delivery incidents correspond to the deployment process and not to incidents generated by the code.
Steve shares with us the recipe for this great success:
- Sharpen your sense of rigour: in particular by adding checkpoints at various levels. Without making the processes too cumbersome, tracking the gaps between the pre- and post-deployment environments has proved essential in avoiding phase shifts.
- Jump on opportunities for automation when they arise: While some things cannot be automated yet, Steve is confident that shortly it will be possible. He also automated everything feasible in the optimisation part of the deployment, in particular, thanks to the use of Jenkins.
3. Encouraging communication: one of the pillars of DevOps
Steve is in a cross-functional position and therefore has an important coordination role with around sixty people, divided into three squads. Each squad has its Scrum Master, its developers, and its business analysts.
To provide a bond between teams, Steve relies on communication, undoubtedly one of the keystones of the DevOps philosophy:
“I am working to bring in more fluid communication with the other teams, to be able to collaborate and find common solutions, discuss, etc. My goal is to break down the barriers between the teams.”
Concretely, this translates into several good practices:
- Focus on short, daily updates: rather than meetings more spaced out in time but longer, Steve recommends regular updates of 15 minutes or 30 minutes maximum. The important thing is “to be able to coordinate on a daily or weekly basis, to have a fully cross-functional vision of what each team does, and to avoid mistakes”.
- Do not hesitate to look again at the basics when necessary: Steve quickly offered support for employees on branching systems on Git. It was important to build on the basics to make sure that everyone was starting from the same point and “moving forward together towards something cleaner and more stable”.
- Adapt to new constraints: the preponderance of remote working, and now the gradual return to the office, are challenges that have been unprecedented for many. While Steve does not hide having experienced some communication difficulties initially, he quickly grasped how to bounce back and propose relevant schedules so that teams could maintain links throughout these complicated months. Steve tells us: “once I got to know the people well, and I was able to adapt a bit to their way of working, things just happened naturally”.
4. Adopt a mindset open to the emergence of a DevOps culture
Although Steve operates in a relatively siloed work environment, he is working to create the conditions for a DevOps approach to emerge. The DevOps philosophy is, above all, a state of mind to which we can tune in if we give ourselves the means to do so.
Steve proves it by his ability to put things into perspective, play down any drama, and be positive. He is undoubtedly a problem solver: where someone else could stop in front of an unclimbable mountain, he will guide the rope party towards a path unnoticed by those who have become discouraged.
He tells us: “As soon as the Covid crisis began, deployments were frozen to avoid risks. But little by little, they let us gain confidence, and once the first delivery was made. Everything went well, and the dynamics normalised.” When we talk about the pressure around this first deployment, which was strategic for the continuation of remote working, we realised that we were not at all taken over by stress:“we had to remind ourselves that we weren’t sending a rocket to the moon. You have to learn to put things into perspective!”
Adopting a positive and tenacious mindset and being prepared to fail if that can provide the answers to moving forward are keys to approaching the essence of the DevOps approach.
Even in a siloed work organisation, it is possible to apply DevOps best practices as long as we embrace the right mindset and stay tuned for opportunities to put the fundamentals of this approach into practice.
Update on a successful DevOps implementation, in our dedicated article!