What do you want to do?
Find this out for each team member.
Then align the roles accordingly.
It's dead simple.
At least among software engineers (but I believe it's among all of us), there is this hidden voice inside. It silently and always reminds us what we want to do, what the forbidden fruit is.
Java engineers seeking transition to Scala.
Scala programmers wanting to do Big Data.
Big Data folks wanting the transition to product management.
When this calling is enabled, magic happens.
Energy goes up. Productivity goes up. Satisfaction goes up.
And when enabled within a team, synergies occur. The team becomes a warp-engine rocket, delivering like crazy while having tons of fun.
Of course, a team might not need a new member; some roles might be lacking, etc.
But it's the best baseline. Once defined, it's just a matter of time until it's reached.