Upper management made some questionable decisions, especially around layoffs. They chose to retain an underperforming employee while letting go of someone who consistently delivered most of the team’s output. Over time, they also outsourced the majority of engineering roles overseas.
The overall development environment was poor, which made it difficult to do meaningful or high-quality work.