Developer Personality and Team Effectiveness

There are patterns in how people think, feel, and behave. Some people, for example, stay calm in most situations, while others get angry easily. Likewise, some people are curious to try new things, while others follow consistent paths. These patterns in characteristics that differentiate individuals indicate the personality of a person.

Personality is shown to influence performance in different types of jobs such as management and healthcare. The influence of personality in software development -- a human-centric activity, however, is less understood.

This project explores the role of developer personality to identify the make-up of good software teams and improve team effectiveness.


Missing Opportunities in Global Software Development

Software development is increasingly penetrating national and geographical boundaries. Today, people from different parts of the world, with different characteristics and backgrounds, collaborate online from different geographical locations to develop software. This model of software development is called global software development.

Many commercial and open-source software projects these days are developed globally. Commercial projects, for example, adopt global software development for reasons such as skill-set unavailability and company acquisition. Open-source software projects, on the other hand, flourish by attracting participation worldwide. At a broader level, global software development is shown to improve both the quantity and quality of software developed.

There are, though, several challenges in global software development that arises due to the diversity in characteristics and background of developers, and global distribution of the workforce. Incomplete information relating to a project among team members is one example of the challenges involved while working on a globally developed software project.

This project aims at identifying missing opportunities in global software development for improvement.

Unfairness in Global Software Development

In traditional workplaces where people meet each other in-person for work, biases are known to exist, negatively influencing work performance and sense of fairness among employees. In contrast, non-traditional workplaces such as online communities, where people may not meet in-person, are considered to provide a level-playing field for all. Open-source software development, for instance, is described using phrases like "code is king" suggesting that only the quality of code matters for its inclusion in the primary line of development.

Lately, however, developers on code hosting platforms, such as GitHub, are somewhat aware of the demographics of co-contributors. The increased awareness of individual characteristics, similar to traditional workplaces, creates a potential for bias. This project explores the manifestations and prevalence of unfairness in globally distributed software projects on GitHub.