I just began reading Brownfield Application Development in .Net and came across a statement that I found very interesting.
"We Don’t Need Another Hero"
The book does an awesome job describing something called the "Hero Programmer Syndrome". This is defined as someone who will do whatever it takes to meet ridiculous deadlines. They may come in early, stay late, trade family time for work time, etc. They are usually the only person on the team with working knowledge of how the many parts of an system work together. They make sure stuff gets done. And when they produce super-human results, they (not the team) are rewarded by management.
A team will actually run more efficiently if the responsibilities (and resulting glories) are spread out across the entire team. This creates a feeling of collective-ownership which empowers all team members to take pride in the application being developed as well as get them to learn about the entire application stack instead of just focusing on their own little piece of the pie. It also makes adapting to change much easier if management can depend on any member of the team to get a task done instead of just the "hero developer".
I’m only in the first chapter, but so far this book has been a great read!