Desirable traits in software teams?
In a recent article published in Computing Now, Phillip A. Laplante ponders cultural differences and their impact on software engineering practices:
[T]he question I’m addressing here is in the actual practices of software engineering— not the management of it. In other words, do people practice software engineering differently because of cultural differences?
He cites some data from Geert Hofstede's social studies - page 3 contains a neat looking graph which is particularly telling. This reminded me of Paul Graham's essay Made in USA:
Americans are good at some things and bad at others. We're good at making movies and software, and bad at making cars and cities. And I think we may be good at what we're good at for the same reason we're bad at what we're bad at. We're impatient. In America, if you want to do something, you don't worry that it might come out badly, or upset delicate social balances, or that people might think you're getting above yourself. If you want to do something, as Nike says, just do it.
Ignore for a moment the fancy-pants practices of software engineering, and let's just agree that some of the best software innovation comes from North America despite efforts to ship it off to "software factories" in the East. Does this mean that, all else being equal, you should hire the tattooed and pierced guy who talks back to you, with a short term focus and high risk affinity for your next software project?