Skip to article frontmatterSkip to article content

An academic scientist goes to DevOps Days

2i2c
Project Jupyter

Last week I took a few days to attend DevOpsDays Silicon Valley. My goal was to learn a bit about how the DevOps culture works, what are the things people are excited about and discuss in this community. I’m also interested in learning a thing or two that could be brought back into the scientific / academic world. Here are a couple of thoughts from the experience.

tl;dr: DevOps is more about culture and team process than it is about technology, maybe science should be too...

What is DevOps anyway?

This one is going to be hard to define (though here’s one definition), as I’m new to the community as well. But, my take on this is that DevOps is a coming-together of what was once a bunch of different roles within companies. The process of releasing technology (or doing anything really) involves many different steps with different specializations needed at each step. The ‘old way’ of doing things involved teams that’d build prototypes, teams that would adapt those prototypes to a company’s infrastructure, teams that would maintain and service the “production” deployments, etc. The whole process was quite slow, partially because of the lack of communication between these very different kinds of groups.

Instead, DevOps attempts to encapsulate this entire process under one moniker. It is generally recognized that people do have different skills and roles, but they should be working together in a group to create, mature, and ship new code iteratively and as a single continuous process. DevOps is intently focused on “agile processes”, and values being quick and lightweight, focusing on metrics like “time between development and deployment.” This is only possible with a large focus on team dynamics and how the relationships between people with different skillsets and responsibilities should work with one another effectively. Perhaps unsurprisingly, this is the kind of thing that people talk about a lot at DevOps conferences (well, at least at the one I went to).

DevOpsDays was more about people than tech

More than anything else, what struck me was how little emphasis was paid on the technology itself. There are a billion moving parts in the cloud orchestration and container technology space, but they got relatively little discussion time at the conference (with the exception of Jennelle Crothers talking about how Microsoft was trying to make its Windows containers super lightweight, which was pretty neat). In general the only people consistently talking about the greatness of XXX new software/tool/etc were salespeople trying to get you to buy their product. Instead, the vast majority of conversations, discussions, brainstorms, etc were about people and process, not technology per-se.

Obviously, it’s difficult to disentangle the tech from the people when you’re in the tech industry, but it was illustrative to see the relative focus that got placed on the “squishier” questions. For example, a few that came up pretty frequently:

It’s no coincidence that the word “team” was in each of the bullet points above.

Scientific DevOps?

As a member of the scientific / academic community, this is quite interesting to me. A whole conference where people talk about creating positive culture and effective yeams? Yes please. However, I realize that the incentives and problems associated with DevOps are not the same as those faced by scientists. For example, a big part of DevOps (and SREs more generally) is ensuring that services, tools, and sites are reliable and stable over time. You can design tech around this idea all you want, but at some point you’ll need a team of people to manage that tech. The DevOps world has seemed to realize that this means the social dynamics of that team are just as important as the technology itself, which is a breath of fresh air.

I wonder what scientific DevOps would look like. Scientists are theoretically also operating in team-based environments (at least, the ones in scientific labs). The incentives of reward and recognition are totally misaligned, but it’s still the case that successful teams produce more effective work in general. Perhaps it’s worth exploring how the DevOps take on operations and team dynamics ports to the academic scientific community.

Open and (relatively) diverse culture

A final point that I noticed was that, relative to other tech conferences I’ve attended, this one had a general air of positivity and open culture. There were all kinds of people there, and while the general makeup of attendees definitely still had a lot of white dudes in it, the room nonetheless never felt like it was dominated by this group of people. There was also a great culture of supporting people as they were giving talks - some of the speakers were clearly more nervous than others, and the audience did a good job of trying to disarm their anxiety. Perhaps this is the kind of culture that comes with a profession that depends on (and focuses on) team dynamics and culture.

Ultimately, as with any good conference, I left having more questions than answers. How can scientists improve their own team dynamics using principles from the DevOps community? How can the open-source community do the same but for distributed team workloads and responsibility? Where is the balance between “solve this with tech” and “solve this with people”? How can we encourage more cross-talk between the world of scientific research and the world of tech? Either way, it was an interesting and informative experience, and I’m looking forward to learning more about this community.

Highlights and takeaways