I work at a small company and we have 2 (possibly 3) developers (myself being one). Although our assignments don't often overlap, I do see that we occasionally write similar, if not the same code. There is also an atmosphere of competition that I think can drive us to write better code, but is dangerous because it sometimes forces one (or both) of us to go dark in hopes to impress the higher-ups with our "cool new code".
Any suggestions (as a manager or developer) on what is a way to encourage developers to work together and to share code and responsibilities?