Old friends are a wonderful thing. You may not see them often, but when you do get the chance to slow down and share, it can be magic. Because you are old friends there are so many things that you just don’t have to say, it is just understood. And when there is a new area of conversation the barrier to real communication is low.
I had an opportunity yesterday to get together with some old friends. We are not talking life-long buddies but rather three guys that I used to work with, have not worked with for a while, but now it looks like we will be working together again.
We have shared experiences. We have unique perspectives. We have a lot to share.
However new friends are also a wonderful thing. New friends add spice to life. There are new things to discover sometimes walking familiar paths with new perspectives. I’ve gained a couple of new friends recently. They are broadening my horizons. They are helping me learn new ways to look at things. I think I am impacting them too.
Software development teams are a lot like a group of friends. The old friends are good. The team members you have worked with for a while are predictable and you have figured out how to communicate with them. You may not always get what you want, but you know what to expect.
However the new friends are good to. They offer new perspectives and possibly new skills. However they don’t know your domain and it takes a while to understand how to communicate with them.
Developing good, valuable software is a tough and complex undertaking. Customers and technology are always changing. Old friends give you velocity and good predictability. But new friends can help your team keep up with technology. New friends can keep your perspective realistic.
I’m very much in favor of stable teams. However recently I have seen several teams and organizations that have stagnated. To maintain productivity over extended periods of time, teams have to inject fresh perspectives, knowledge and energy. What is the rate of change that we need, I don’t have any statistical evidence, but my gut is telling me that on the normal Scrum / Agile team of 8 +/- 2, that adding a new person every 6-12 months would be a good thing.
What do you think? Let me know!


