Well, here's the problem, Mr. big tech CTO. You hire C level managers who know absolutely nothing about how software is made to lead A level developers. All the blogs and thought about how to do software engineering correctly? Worthless. It doesn't matter. Your self absorbed non-tech tech manager could not hold a conversation about agile, languages, patterns... anything. not just because of technical grounds but because he/she can't be told they are wrong by simple developers. Of course that won't stop them from telling us what tools and technologies to use and wasting our time arguing for hours about it. You see, he/she is an expert because he/she took a c++ course in college! So, what do you have to do? Weed out your make-it-up-as-you-go-along fakers who failed up to middle management and make development a living hell.