We always have new developers start by writing unit tests and documentation for the most used components of our codebase as determined by profiling. This way we are always improving our most important code, and at the same time teaching the largest percentage of our code to the new dev at the same time. With core components that are used everywhere, the new dev can literally ask anyone else on the team for help. This can help the new dev by allowing him/her to spread out what he/she thinks are dumb questions without feeling as embarrassed. Then by the time the next planning session has accounted for the larger bucket of dev capability, we have some great bugfixes, and the new dev is more confident and ready to specialize more.