There's no clear onboarding process and manager's expectations for developers are too high. Management expects new team members to be contributing pristine code after just two weeks (Maybe even first week) of becoming familiar with their very complicated code base. One developer was interviewed for their work in one programming language, then assigned to a completely different one and scolded for not being fast or proficient enough in that language. Devs are expected to write code that does not have to be reviewed by anybody, since tech leads are too busy being on call to pay attention to their onboarding process. Too many managers means poor definition of responsibilities, so you end up in meetings with twelve people, none of which know what the meeting is for. Many projects are poorly defined from the get-go and require writing the same features over and over because of short sightedness of the technical leadership.