Always place your most skilled developers to the key problem. No matter the developers like to dive into the problem or not. Don’t place too much expectation on those fresh developers for the key problem. Or, you will get an answer that they can’t solve the problem months later and you can’t say anything on them. And all you have to do is to delay the project. To put another skilled developer to replace the unskilled one months later may hurt a lot! But don’t hesitate to do so. Or your project is in danger.
This is a lesson learned from my current group on task of debugging. I regret that I chose other tasks rather than debugging months ago. And at that time, a fresh developer was assigned to debugging. And now we are all waiting for a more robust debugging but should never come out months later by that developer. And I have to learn all the debugging from beginning to catch up all we want.