“Basically every step is very collaborative,” said Tracy Chou, who was an engineer at Pinterest and Quora and is now working on start-ups. “Building a big software system, you could have dozens or hundreds or thousands of engineers working on the same code base, and everything still has to work together.”
She added, “But not everyone is the same, and that’s where empathy and broader diversity really help.”
The memo distinguished between empathizing with other people’s feelings and analyzing and constructing systems, and said coding is about the latter. But it requires both, as do most of the jobs that are growing in number and in wages, according to economic research. Jobs that require a combination of math and social skills — like computer science, financial management and nursing — have fared best in the modern economy, found David Deming, a professor at Harvard.
It’s true that programming can be a solitary activity in college computer science classes or entry-level positions. But soon after, it’s impossible to avoid teamwork — with the business or legal departments, but also with other engineers.
There’s a joke in computer science that one of the hardest tasks is naming things in code. It’s funny because it’s a nontechnical task. But it involves something that can be even harder than technical work: communicating with other people and intuiting what they might need and understand.
Computer programming was originally considered a woman’s job. They were programmers of the Eniac during World War II and at NASA, as shown in the film “Hidden Figures.” That began to change when programming professionalized in the 1960s. The stereotype of an eccentric genius who would rather work with machines than people was born, according to Nathan Ensmenger, a historian at Indiana University who studies the cultural history of the software industry.
Yet that was never an accurate description of the job. It was social from the beginning,…