What makes you think that the personable engineers aren’t also the ones leaving?
One of the reasons I have a lot of job offers isn’t that I’m the best technical engineer you’re going to meet, it’s that I have a large network and is generally seen as a nice person to work with. Obviously my ability also plays into this, but you can be both good at your job and a decent person at the same time. In my experience most people are.
> Play the cooperation game.
Like I said in my original post, I do this, and in my personal opinion experience so so most people. The thing is though, I have a lot of experience (and education) with/in the “MBA” side of things, and a lot of the things you see some companies do, that this article also touches on, like putting up a needless bureaucracy around estimates and time tracking, don’t actually work as intended. Time tracking tends to lead to cultures where the speed of delivery becomes more important than the quality, and estimating things by the hour is frankly just impossible in a field where you can spend an hour on something incredibly stupid and then 10 minutes on some brilliant solution to an issue marked as complex. I mean, maybe my anecdotal experience is from a mediocre perspective, but even after decades of programming I still do the equivalent of talking to a rubber duck, or at least asking my very good friend and coworker to come and spend 5 seconds spotting where I’ve made the obvious mistake (and the other way around), which we have time to do because we’re not on the clock to deliver as fast as possible by the way.
In a world of a lot of shitty business practices, people who can, will take their cooperation game to the place it makes the most sense for them. Including when they are also very personable people.