People not Cogs
ByIn Agile we value the developers as people with unique skills and interests. That is why one of the key concepts in Agile is:
People over process
In large development groups it seems that the software developers are treated a replaceable cogs in a development organization. I was again reminded of this by a fellow developer. He wish he had never been put on a given project. The reason he was put on it was because he was available. It was a one person project that was way under-scoped.
We are community beings. Having a sense community makes us more productive. Grouping engineers in self organized teams is the ideal way to use resources. You can assign projects to teams who will focus on getting the job done.