How software teams (self-)organise

Software has become an integral part of our daily lives. We are woken up by the alarm app on our phones; we use navigation software to commute to work; we use social media to interact with friends and collaborators around the world. Software is created by diverse teams where different developers have different backgrounds, specialisations, and experiences. Managing such teams is a challenging task that needs to account for this diversity while delivering timely and robust code. In the domain of Open Source software development, these challenges are further amplified as teams are self-managed and members can join or leave the team at any point in time. In our work, we develop and apply state-of-the-art data and network science methods that help teams to enhance their understanding of their internal team structure, identify perils, and design and implement corresponding solutions.