Sergey Nivens - Fotolia
How often do your developers, sysadmins and other DevOps professionals sit down and meet? That’s an important question to ask as you work to embrace a DevOps strategy and optimize your continuous delivery chain. The ideal answer? Not very often.
For most professionals, meetings are a fact of life. To understand the needs of the people you work with and coordinate your efforts, you sit down and talk with them, whether in person or virtually.
Even discussions via email can essentially function as virtual meetings when email is used for detailed or rapid-fire discussion.
The problem with meetings
In a DevOps world, meetings present a problem, no matter which medium a team uses to conduct them. If the goal of continuous delivery is to issue updates to software on a flowing, near-constant basis, having to sit down periodically and talk about workflows or processes with your colleagues is a hindrance.
In addition to taking your IT experts away from their work on software, a dependency on meetings can delay updates by causing them not to happen until after a meeting a has occurred. This breaks the continuous delivery chain.
DevOps strategy to use tools instead of meetings
It's therefore not surprising that DevOps strategy emphasizes the use of tools that minimize the need for meetings. Examples include:
- Tools for automating provisioning. Orchestrators and infrastructure as code approaches to infrastructure management eliminate the need for developers and sysadmins to sit down and discuss which resources to allocate where. Or, worse, sysadmins would stay siloed and have to guess where to focus without consulting the developers, who are better positioned to predict the resources software will require.
- Code repositories. Rather than taking time away from coding to discuss code commits with each other, developers can use repositories with revision-control systems to communicate the purpose of changes or explain dependency issues.
- Docker. One of the reasons Docker is so popular is that Docker containers make it easy to achieve environment parity. What does environment parity have to do with meetings? Simple: When you can count on your environment to remain the same throughout all stages of the continuous delivery chain, you have one fewer topic requiring discussion.
- Log aggregation and analytics tools. Logs are not exciting to most people. They’re especially unexciting when you’re forced to sit down and discuss them in a meeting. Tools that automate the process of aggregating and analyzing logs help shorten meeting times.
- Chatbots. Chatbots can be used to automate the performance of tasks in response to certain events. Because they usually do this in a transparent way that everyone can monitor, chatbots eliminate the need for team members to communicate directly about whichever job the chatbot performs.
Avoiding meetings is not likely the reason that a DevOps engineer will give for embracing these tools and strategies. But that’s at least part of what makes tools like these powerful, whether your DevOps team realizes it or not.
When you should meet
Alas, meetings are not totally avoidable. They have their purposes, even for a DevOps-oriented organization that seeks to minimize them.
For example, when it comes to creating a long-term software delivery roadmap, talking it over is worth the time and effort. A post-mortem meeting is also in order following a major failure to provide an opportunity to discuss what went wrong and prevent it from recurring. These are examples of discussions for which there is no software substitute.
In general, however, an effective DevOps strategy is one that helps your team to avoid unnecessary meetings -- and to keep the meetings that do occur as streamlined as possible.