You are here

Beyond email with ChatOps: Getting work done in a chat room

public://pictures/Jason-Hand .jpg
Jason Hand, DevOps Evangelist, VictorOps

Over the past few years, there’s been a big shift in the way teams in the tech space communicate, collaborate, and get things done. This change has accelerated as new tools and processes have matured and gained traction beyond early adopters and tech-savvy millennials with a pulse on what’s trending on TechCrunch or Product Hunt.

Regardless of the size and distribution of workers, teams are moving their conversations away from traditional channels such as email and instant messaging and into more collaborative and synchronous environments like group chat. The idea is simple, really. Collaborating as a group to create conversations, build context, and share information about what’s going on across technical and nontechnical teams alike builds something very important that many teams in an organization overlook: empathy.

With empathy at the heart of the DevOps movement, teams are finding that new ways of interacting with the tools and services they leverage as well as each other, means everything gets done more efficiently. While keeping everyone in the loop on the what, why, and how it took place a greater awareness is shared throughout teams within an organization. Shortening feedback loops and seeking out the most efficient way of accomplishing and communicating the results of tasks becomes central to all actions. As a result, persistent group chat tools are where teams are moving their conversations and the actions they perform each day.

[ Learn how value stream mapping can improve your DevOps workflow. Download this GigaOm Research Byte report today. ]

DevOps is eating the comms world

Modern software companies have begun to adopt DevOps best practices in order to get their product to market sooner. The concepts and processes brought forth through a DevOps approach aim to knock down perceived silos between teams—teams that traditionally operated independently from one another, communicating and collaborating only when absolutely necessary.

The old-way, known as a waterfall model, meant development cycles might take months, making software releases a long and drawn-out process. The new DevOps model means that, with highly efficient, collaborative, and empathetic teams, new versions of software can be released to the public in a near continuous manner (read: continuous delivery).

Anyone who has been a part of this shift in focus will tell you that DevOps isn’t purely about tools and processes. While those do play an important role, it’s more about people and creating empathy within teams. One way to create that empathy is to openly share everything that is taking place. When conversations are no longer siloed and everyone can participate and collaborate over a subject or problem, a deeper understanding is had. It’s this type of understanding about how things get done, along with the challenges each specific team faces, that really moves the empathy needle in a positive direction.

Synchronous methods of group communication help to provide awareness to teams traditionally cut off from one another. By creating an interface for workers in all teams to learn and share what’s going on, everyone is constantly pairing with each other. In addition to an increase in collaboration and conversations through group chat, native third-party integrations means many of the tools and services popular in the tech community can be plugged directly into chat.

By integrating third-party services, along with (in many cases) a chatbot, teams are now beginning to take action directly from within the conversation as though it’s a shared command line interface (CLI) for everyone to utilize. When treating the group messaging tool as though it’s a CLI, an engineer can perform tasks, communicate to the team what has been done, teach others how it was accomplished, and create context about actions taken. And all of this is right in line with the conversations that are related to those actions.

[ Learn what separates successful DevOps initiatives from unsuccessful ones in this new August 27 EMA research webinar. ]

Actionable tips for developers

So what are actions developers are currently taking from within chat?

1. Integrating status updates regarding changes to source code repositories

The most obvious and widely used action is to integrate status updates regarding changes to source code repositories. Developers can take action from their traditional CLI to commit and push new versions of code to a repo just like they always have. However, once that action has been performed, a notification of the changes is displayed in the chat client. This means a developer can perform her usual steps, but everyone is updated to the latest change to the codebase via the shared chat room.

2. Allowing a chatbot to perform actions on behalf of developers

Developers could take this one step further by allowing a chatbot to perform the action on their behalf. By scripting basic and limited actions that a bot can perform, the same developer could commit and push their latest code changes straight from within the chat client. This method not only shares what has taken place but teaches others how it was accomplished. Live documentation is created and shared to everyone simply by the developer taking the action they were already going to do. The same can be said for actions someone on a development team may take to build platform environments.

3. Continuously integrating tools

Popular continuous integration tools can be integrated to behave in much the same way as explained with source control repositories. Developers can start a new build process either through the assistance of a chatbot or by manually triggering it from the tool’s interface or CLI. These actions are then shared within chat for everyone on the team to see.

4. Collaborate on problems

Eventually a problem or disruption in service will take place. Once the right people have been notified about it, they can assemble in their preferred Group Chat tool to discuss, diagnose, and repair the issue. Having one central place for everyone to share context on what is taking place, who is taking action, and what the results are means issues are resolved much quicker and duplication of efforts is avoided. Additionally, live documentation is created on the fly allowing teams to review what took place retroactively to seek out areas of improvement. 

Is ChatOps right for you?

Email and Instant Messenger may still be the preferred channel for corresponding with co-workers on topics that are not time-sensitive. However, today's modern organization is finding great benefits in shortening the time it takes to accomplish tasks and engage in conversations. The benefits of speed, transparency, and learning have changed the way teams work. 

As teams begin to adopt chat clients as an interface for more than just sharing cat GIFs, we’re going to see an explosion in innovation about what additional efficiencies can be gained by moving actions already taking place in a separate interface and placing them into the conversations related to them.

Have your say: Have you killed off email? Are you using a persistent group chat tool? What value have you seen from using group chat instead of IM or email?

[ Get Report: The Journey to Enterprise‐Scale DevOps: Becoming DevOps Determined ]