- Teams are divided both financially and competence-wise meaning it is really hard to get a person from other team to help out with your project.
- Selling "solutions" to customers because those solutions are popular, not because they can solve customers' problem e.g. using "microservices architecture" as a selling point where microservices are not applicable from technical perspective
- Low expertise with UI/UX technologies. Backend developers without proper education / skills tend to perform UI/UX tasks which lead to
- Low expertise in terms of system design. Combined with "selling popular technologies" this produces big number of cumbersome solutions to simple problems. Most people are not motivated to self-educate.
- Management doesn't seems to know how IT projects work. Most management do not have IT backgroud.