UX for DevOps

 
 

UX for Devops

How do we build user experiences to support the work of a DevOps team? What is similar to classic HCI, and what parts do we need to rethink?

When I was trained in HCI, our usual scenarios involved fairly naive users who were entering a domain of expertise, and following a fairly well-trodden path. For example, Expedia probably knows a lot more about buying plane tickets than I do, and there’s a fairly common route from picking a trip, to picking a ticket, to paying for it.

In contrast, DevOps users:

  • Are domain experts, with rich understandings of their systems

  • Have a model of their system far richer than can be sent through telemetry and configuration

  • Have the power to adjust the data that they send

  • Are often asking questions that have never been asked before

  • Are sometimes called to make decisions under incredible time pressure

  • Work collaboratively to make sense of complex systems and challenges.


The Core Analysis Loop

From watching some of our Honeycomb users, I realized that they follow an iterative path to make sense of a mysterious phenomenon. The Core Analysis Loop was my attempt to describe how this process works.

→ Read the blog entry

image.jpg

BubbleUp

If we think that there is some dimension out there that can help identify why the good and bad values act differently from each other, can we find that dimension without taking power out of the users’ hands?

BubbleUp uses core visualization techniques to help identify which dimensions are different — even with Honeycomb’s high-dimensionality, high-cardinality datasets.


Resiliency and Safety Engineering for DevOps

Others who are playing in this space include:

  • John Allspaw at Adaptive Capacity Labs, which has some great blog entries seeing resiliency as a sociotechnical system.

  • Learning from Incidents is building a community of practice around learning from incidents

  • The SnafuCatchers has some great experiential stories about complex system failures for DevOps