Today my friend told me about a rockstar team that once worked at his company. People looked up to them as they were the best programmers, you know, the real stars. And whenever you’ve seen them you spotted the cardboards over their screens to prevent anyone else from seeing their code. After some time of that kind of work, the project went awry and people decided that too many rockstars on a team is a perfect way to complete destruction.
However, I wouldn’t blame the water for being wet. We, software engineers, tend to be protective of our work (it is, after all, creative act that took energy and effort). We get anxious about showing our code.
Unfortunately, the wall you build around “your” code is a perfect formula for a disaster.
Luckily, doing the things that scare you more often makes them less scary. Moreover, working on the same code base opens up lines of communication that previously might not have existed. And even though it takes the time to build trust, a team that is confident enough to share its code with each other will quickly rise to that level.
After all, we strive to meet client expectations by producing code that does what it is supposed to, but, at the same time, we want to make room for future changes in a sustainable way.
That’s why rather than recluse on a team and prevent your colleagues from looking into your code, it is far better to work with each other as much as you can. Nobody knows everything about software development so this way your code gets cleaner and you learn and grow as developers and as a team.