...I believe being a maintenance programmer on other
people's code is so important; you'll be left with a real understanding
of why good practice is important, and, quite likely, a fiery desire to
try to make things better.
I think any junior programmer would benefit from at least five years of
maintenance experience. Giving them greenfield projects out of the gate,
especially unsupervised, merely adds to the pile of unmaintainable stuff
- while teaching them very little.