“Prevalent stereotypes describe software engineers as socially inept introverts that are single-mindedly focused on computers,” writes psychologist Timo Gnambs in the .
This assertion is likely to set software engineers (and those who love them) yelping in indignation for two possible reasons: the perceived inaccuracy of the stereotype or the sense that this stereotype is so stale that everyone’s tired of hearing about it.
Gnambs started by looking at the Big Five personality traits: openness to experience, conscientiousness, extraversion, agreeableness, and neuroticism. It’s important to note that this set of characteristics is often criticized for not being exhaustive (there are obviously many other dimensions to personality) and also for not having any real basis in a theory that explains why these factors are important, where they come from, or how they interrelate.
Nonetheless, the Big Five traits do seem relatively stable within individuals, with the same people giving similar answers when they’re given the same test across a number of years. They also correlate with other factors, like workplace behavior and academic success, so it seems that they’re tapping into something meaningful and consistent, even if we don’t really know what.
The neurotic, disagreeable stereotype
Gnambs thought there was a good chance that two factors in particular would be related to aptitude at programming: conscientiousness (the tendency to be ordered, disciplined, and dutiful) and openness to experience (a tendency toward imagination, new ideas, and adventure). He reasoned that programmers need to be conscientious and detail-oriented to be good at their work and also imaginative enough to find creative solutions to problems.
If the popular stereotypes have any basis in reality, we might also expect to see an association with neuroticism and a negative association with extraversion and agreeableness—that is, programmers would be more introverted and disagreeable. Finally, Gnambs suggests that there’s probably a link with intelligence. (He refers to “general mental ability,” but cites research about intelligence, as assessed by measures like IQ tests.)
To test all of this, Gnambs found 19 existing studies that had assessed Big Five personality traits and programming aptitude, measured by objective measures like the number of errors in code. Some of the studies also assessed intelligence. Altogether, these studies included data from 1,695 people from the USA, Australia, England, and Canada.
Introverted but creative
The trait with the strongest link to programming skill was intelligence, with individuals who scored higher on intelligence tests producing code with fewer errors. Openness to experience was also vitally important, as Gnambs expected. Conscientiousness was too, although to a lesser extent.
As for the more popular stereotypes, the only one that held any water was the expectation of introversion: people with lower extraversion had higher programming scores. Neuroticism and agreeableness, however, didn’t display any strong link to programming.
This research doesn’t tell us about what makes people choose to become programmers in the first place. These traits also aren’t the beginning and end of who becomes a good or bad programmer. For instance, people who are extraverted, less conscientious, less imaginative, or who don’t eat intelligence tests for breakfast can obviously still become good programmers—personality traits and intelligence tests together explained only about 12 percent of the variability in programming aptitude. That means that they suggest a general tendency and a link between the traits but leave a lot of room for other contributing factors, including other personality traits that aren’t in the big five.
There’s also the problem of publication bias. Studies finding no links between the traits might never have made it to publication, meaning that Gnambs couldn’t find them in the literature and include them in the analysis. While he found no imprint on the data suggesting it was likely to be a problem, he does acknowledge that the literature he used might still be biased. Getting around publication bias to produce more accurate meta-analyses will hopefully become more feasible as researchers get together to try to fix science, or at least some of its publication biases.