Developers' Suffering is a Feature. Not a Bug (8/30)
I'm writing 30 posts in 30 days. This is number 8.
Greg Wilson of teachtogether.tech wrote this post about this survey done with developers published in IEEE.
Basically the survey asked the developers for a list of social and technical factors that matter the most, and rank them. And results are well, let me quote:
The top five are:
Manager (everyone wants a good one)
Perceived productivity
Rewards
Team culture
Skills are well used
The least important five (out of 40 categories):
Lateral move opportunities
Training for engineering technologies
Training for soft skills
Private office / number of people in workplace
Training for engineering tools
That’s right: everyone wants a good manager and a good team culture, but they place training in the soft skills those things need almost at the bottom of the list.
I’m sure developers being logical people, would correct the flaws when illogic is pointed out to them. Either correcting the flaws or provide an argument to defend the illogic. Mostly, I agree with Greg. I think maybe the low ranking of training for soft skills is arguably defensible.
The kind of developers that would rank training soft skills low, is also the kind who would not aspire to be manager any time soon. They think the best way for them to contribute is to be more productive in the churning out code and to train for hardcore technical skills. If this survey was to include additional questions such as, “Do you want to be a manager soon?” or “Do you prefer a former engineer as manager?” I’m sure those who answered yes to either questions is likely to rank training for soft skills higher.
Developers are used to being called smart
As for training for engineering tools, that’s a bit less defensible. What I can offer at best is an explanation for this contradiction in choices. These developers or engineers, by the nature of their jobs, are likely to be those who like puzzles. Figuring out how an engineering tool works is the kind of puzzle that puzzle-loving people who also happen to be engineers would particularly like. So why take the fun away by having them to go for training which would reveal the answers to them?
Also, all developers would instantly recall at least one instance in their career where they figured out one feature or use case of some tool they use. So why waste the money?
And most importantly, most developers and engineers would likely be told by other people in their lives that they are smart. So they might devalue all kinds of training regardless. Since they are smart, why would they need any training at all? I am not entirely sure of this and it would be interesting to see if there are other training-related answers that were ranked higher.
In software, whenever the user encounters a missing feature or a possible bug, that turns out to be intentionally designed, the description for this is, “That is not a bug. That’s a feature”
If it turns out that the survey answers are indeed correctly reflecting most developers think, and I have no reason to disbelieve it, then when developers suffer at work for poor social reasons such as having a poor manager or unproductive team mates, it’s probably fair to say that’s not a bug. That’s a feature.