At SourceLevel, we're in a privileged spot to gather some data on how software engineering teams are dealing with COVID-19, home office, social distancing, and so on.
For this analysis, I have selected our Brazilian clients, mostly because I can pinpoint in time some measures that the Brazilian government and society, in general, have taken. Around 60% of the software engineers that work for those companies are located in São Paulo, which is the epicenter of COVID-19 in Brazil.
We gathered data for the first four weeks of March. Some thoughts about this period:
We're looking at the data for the first four weeks of March and the first week of April.
From the week of March 01 to the week of April 05, there's 36% less Pull Requests being created.
You can see that there's a significant drop, but I'd say that the other data we have is more revealing.
Here, we're aggregating comments and inline comments on Pull Requests. Although there was an increase in comments in the week for March 15 (the first week that I'd consider a full-time remote week for technology teams in Brazil), in the following weeks, we had a substantial drop in comments.
The same thing happened with Request Changes in Pull Requests. We saw a drop in the weeks following the social distancing in Brazil.
I'd argue that Request Changes are tied to how teams interact in real life. If there are fewer interactions, one could be less inclined to request changes on their teammate's pull request.
We couldn't see the same drop in approvals. On the contrary, we can see a small increase of 6%.
I'd say it's possible that teams are engaging less, and when people ask for reviews, the option with less effort is just to approve it and be done with it.
Although we'd need a complete analysis and gather more data to have a detailed view of what's happening, the drop in comments and request changes is worrisome for me. Everyone is working from home, expecting to collaborate remotely, and one of the main tools for that is interactions on Pull Requests.
I offer two possible hypotheses for this:
1. Teams are collaborating more on synchronous tools like Slack, Zoom, Google Meets, and the like. Feedback on code, knowledge, and decisions are being exchanged over those tools.
2. Teams have not yet incorporated a remote-first culture. Some interactions that happened on-person are not being replaced by something else, and the individuals are more isolated in their homes and their tasks. I'd say that approving PRs became automatic since people lack the interactions that would make them more aware of the intended results and more critic of the code being merged.
Anyway, I'd take this as an opportunity to check with your coworkers how things are changing because of their isolation. I'd also offer more synchronous opportunities for them to talk to each other about the work they're doing.
And you? Have you noticed changes in the way you deliver software?