I have a burning curiosity to know if there are any out there who are not very competitive (such as myself) who don't mind sharing and then get treated as a fool because I share knowledge so freely? It doesn't really bother me since I consider solving the problem the most important part of the job but it seems to happen at each job I've had in software development.
I'm extremely anticompetetive and if I know something that could help someone, I share without thinking (and often help if I have time to spare). Fortunately I haven't experienced any negative consequences of this yet - quite the opposite, I tend to end up in friendly groups in which everyone helps others.
I think such pay-it-forward behaviour is contagious, so it is a small way to make the world a better place.
You can be very non-competitive. But, be warned that you might be replaced by someone who is cheaper and uses the knowledge you learned yourself to get or keep their job.
I was non-competitive..and eventually it cost me my job.