Workgraph: Personal Focus vs. Interruption for Engineers at Meta

ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE)

Abstract

All engineers dislike interruptions because it takes away from the deep focus time needed to write complex code. Our goal is to reduce unnecessary interruptions at Meta. We first describe our Work-graph platform that logs how engineers use our internal work tools at Meta. Using these anonymized logs, we create personal-focus sessions. Personal-focus sessions are defined in opposition to interruption and are the amount of time until the engineer is interrupted by, for example, a work chat message.
We describe descriptive statistics related to how long engineers are able to focus. We find that at Meta, Engineers have a total of 14.25 hours of personal-focus time per week. These numbers are comparable with those reported by other software firms.
We then create a Random Forest model to understand which factors influence the median daily personal-focus time. We find that the more time an engineer spends in the IDE the longer their focus. We also find that the more central an engineer is in the social work network, the shorter their personal-focus time. Other factors such as role and domain/pillar have little impact on personal-focus at Meta.
To help engineers achieve longer blocks of personal-focus and help them stay in flow, Meta developed the auto-focus tool that blocks work chat notifications when a engineer is working on code for 12 minutes or longer. auto-focus allows the sender to still force a work chat message using “@notify" ensuring that urgent messages still get through, but allowing the sender to reflect on the importance of the message. In a large experiment, we find that auto-focus increases the amount of personal-focus time by 20.27%, and it has now been rolled out widely at Meta.

Featured Publications