1. CEO and the Business team are micromanaging the development teams, not knowing where to draw the line and how to delegate responsibility to mid-level management.
2. Employee always feels like all goals are short-term and not having a sense of the big picture or business plan, mainly because it probably does not exist. Usually you don't get the time to fully finish and deliver a project and not be shifted to something entirely different because the whole company's focus has been shifted to the next so-called "opportunity". Feels like the company is chasing a contract where there is still not yet a well defined, stable, good product.
3. Even though the main technology and methods are SOTA and interesting, the typical algorithm developer does not have time to do actual research and improve her skills, because tasks are not well-defined, and management thinks a developer is also a marketing person who needs to constantly present their work.
4. No self development, you get stuck on a single project for months and years without an ability to change and to widen your skill set and knowledge. No personal growth, very few people get promoted and not necessarily for the right reasons.
5. No team-play, no brainstorming, no future thinking about the overall picture. Always only focusing on the very close targets.
6. HR does not exist, no one cares about your personal life and challenges, unless you're lucky and your direct manager is human.
7. No mid-level professional management which also has a technical experience, people you can learn from and grow with.