They write crap code and if they didn’t control the recruiting process there’d be very few of them.
... and they don’t understand the business or users’ needs for the software so they try to pass off something that that think it should do and then think there’s something wrong with the users if they don’t accept it.