Remote Working Lessons from Open Source Software
Quansight has been fortunate with the recent shift to working remotely; that is our normal mode of operation. This is due in part to our leadership’s heritage in open source software. For decades, open source software developers have been creating great software mostly working as volunteers in their spare time outside of normal working hours, often at home. In addition to our Founder, most of our staff have years of experience working in distributed teams on various open source projects.
Ultimately, the differences between working remotely versus working in the office are social; both in the social aspects of conducting business and in personal social issues. New tools, behaviors, and processes are needed to maintain both types of social interactions when shifting to remote working. I will discuss here some of the things we at Quansight were already doing that allowed us to easily transition to remote working exclusively, and some things we have implemented or expanded in response to the current situation.
One of the big challenges of working remotely is not having the ready channels of communication available in the office (notably chatting on a break, encountering someone in the hallway, or knocking on someone’s door). There are a host of text, voice, and video communications technologies available to replace in-person conversations and meetings. We use a variety of services to help people stay in touch such as Slack, Zoom, Jitsi, and Hangouts. We have often said to each other that “Slack is our office” and people typically check-in on Slack at least once a day. I won’t go into the details of text, voice, and video communications technologies and how they are used. Most companies are familiar with those options and there are plenty of resources available to learn about them.
Beyond the technological approaches for staying in touch and for conducting meetings via teleconference, there are subtle---but important---lessons to be learned about team management, decision making, and social interaction.
When managers are not co-located with their teams---especially when each team member works alone---the managers do not have regular visual feedback on the team’s activities and productivity. You don’t see who “comes in early” or “stays late” or “seems productive in their space” as you make “the rounds”. Each team member must be responsible for their own activities and deliverables. It is harder for managers to gauge progress. The focus for the manager shifts to deliverables and the mindset of their team. Making sure that team members have the right goals and priorities and that they are in a productive frame of mind. This, however, has always been how open-source teams collaborate.
Open-source collaborators have very few signals as to how much time contributors spent on a task or if their work on a line of code was interrupted by frequent snack or bathroom breaks. The time at which code or other contributions are submitted gets recorded, but exactly when the work happened is not. Open source has always been about asynchronous coordination, text discussion, and a focus on the result and not how it was achieved. Open-source teams are managed via a lot of text communication and documentation of work results. Other indirect signals that can be indicative of productivity are not essential to how open-source teams stay in sync.
When teams are co-located, key decisions are typically handled in meetings scheduled for that purpose and it is often difficult for all decision-makers to confer outside of those meetings. When teams are distributed, they rely heavily on non-real time, text-based communication. This has advantages and disadvantages. One advantage is that it is possible for all decision-makers to be heard and participate in a chat forum or shared document where decisions are made without requiring a specific meeting. A disadvantage is that it is possible for anyone to privately message an individual or subgroup at any time making it possible to disrupt the decision making process or exclude key decision-makers, intentionally or unintentionally.
A lesson Quansight has learned from open source software work is that all communications on a topic - especially a decision - are shared in the appropriate team forum and private conversations are only used for confidential discussions. As a relatively new Quansight employee, I can attest that it was a little unnerving at first to have nearly all communications shared. But after a little getting used to (and a few reminders), it has become natural and the benefits are clear. This kind of transparency in decision-making is consistent with the spirit of openness implied by “open source” and has served Quansight well.
Open-source teams don’t only work remotely upon occasion, they nearly always work individually. Some open source project members work together for decades without ever meeting face-to-face. They have developed means of connecting personally using the same remote technologies they use for work. At Quansight we have a “qooler” channel that is used for everything from vacation and kid pictures to hobby and restaurant discussions. There is a regular “tech-share” meeting where all are invited to share their projects and interesting technologies they have learned. Further, I was surprised to learn that groups of developers at Quansight occasionally use a video conference to chat informally while they do their work - a remote working form of “hanging out in the office together.”
With the shut down of most workplaces, Quansight employees not only work in a distributed mode, but all of us are also experiencing reduced social contact outside of work. It’s more important than ever to maintain social interactions. We have established several continuous video conferences so that more people can socialize informally in virtual workrooms. We have also created new social channels, such as a #q-math and a #q-physics channel to discuss common interests. There is a channel for scheduling and coordinating multiplayer online games. There is even a channel called #sars-cov-2 dedicated to conversations about the pandemic. It is there to recognize that our staff are being personally disrupted by the crisis in disparate ways, so this channel provides a venue to share, to vent, and even to grieve with friends and colleagues.
By applying the lessons learned by people who have worked much of their careers and built some of their best relationships through remote interactions, it is possible not only to endure the current disruption, but it can be an opportunity to strengthen distributed teams and learn new collaborative skills. By using remote management techniques, implementing distributed decision making, and learning to have meaningful online social interactions, we just might come out of the current situation with improved teams and businesses.