Programmers have their own cartel but instead of focusing on reducing the number of entrants in the field (e.g. by demanding special universities or certifications), it works through job creation.
Developers have an innate ability to keep creating more work for themselves by increasing the complexity of the solutions that they produce. Managers are completely obvious to this.
The monopolistic and highly profitable nature of software companies allows managers to keep hiring more developers, who keep creating more unnecessary complexity which requires more developers to maintain... A vicious cycle. There is no limit as to how much complexity can be created. Most managers still believe that the best way to speed things up is to hire more developers.
In reality, the best way to speed things up is to reduce the number of developers and to hire better developers. The problem is that managers, even highly technical ones are not capable of knowing what a very good developer is. A technical person cannot accurately rank other technical people who are better than them; they can only rank others who are at or below their own skill levels.
There is an old saying that the top experts in any field are those who know when and how far to bend the rules. This is especially true when it comes to software development but 99% of technical managers will disagree with that statement; they still believe in blanket one-size-fits-all approaches.
The spectrum of talent is extremely broad, much broader than everyone realizes. IMO, even the most talented, most acclaimed CTOs and project managers will fit somewhere in the middle of the technical talent spectrum so they will miss a lot of talent.
Developers have an innate ability to keep creating more work for themselves by increasing the complexity of the solutions that they produce. Managers are completely obvious to this.
The monopolistic and highly profitable nature of software companies allows managers to keep hiring more developers, who keep creating more unnecessary complexity which requires more developers to maintain... A vicious cycle. There is no limit as to how much complexity can be created. Most managers still believe that the best way to speed things up is to hire more developers.
In reality, the best way to speed things up is to reduce the number of developers and to hire better developers. The problem is that managers, even highly technical ones are not capable of knowing what a very good developer is. A technical person cannot accurately rank other technical people who are better than them; they can only rank others who are at or below their own skill levels.
There is an old saying that the top experts in any field are those who know when and how far to bend the rules. This is especially true when it comes to software development but 99% of technical managers will disagree with that statement; they still believe in blanket one-size-fits-all approaches.
The spectrum of talent is extremely broad, much broader than everyone realizes. IMO, even the most talented, most acclaimed CTOs and project managers will fit somewhere in the middle of the technical talent spectrum so they will miss a lot of talent.