These all seem like things you can figure out during the hiring stage. You could be losing out on some really talented employees by simply distrusting all junior candidates due to some prior incidents.<p>I've worked with some absolutely top-notch candidates straight out of college, and some mediocre ones which plenty of experience.
It seems like what op is trying to say is that being a data scientist is a cross disciplinary position, so you can't really start off as a data scientist, rather you become one through other positions. However, their complaints feel more like either an inability or unwillingness to make the team a place for its members to grow. Ideally, members would be doing code review, so issues with ugly/inefficient code can be addressed and learned from. Getting up to speed on the organization's systems, which system to use situationally, general philosophical thinking behind what the data is, which problems to solve and how to solve them are definitely things that come out when a mid-level mentors a junior, which should be a thing that happens on the team, because it not only helps the juniors get up to speed, but it reinforces the mid-level member's knowledge. I think that speaks to real structural issues in how the team is set up, and if op's the head of a data team, I wouldn't want to work for him or for a company he works at in that capacity.
Is this targeted at junior data scientists? Is the intent for them to know that their code is inefficient, unformatted, overly specific, weird ass, and wrong?<p>I don't disagree that large amounts of people graduating from computer science programs are under-equipped to enter the workforce, but maybe focus on the shortcomings of the educational system than the people coming out of it.