Source control is a must. If you're working with a large team, source control technologies that include PVCS, Merant VM, or Microsoft Visual Source Safe won't work. The check in / check out features in these technologies place locks on particular files. If team members ever leave work without checking code back in, this will cause major headaches. Also, developers don't have the ability to work on the same source and merge the code back in. I'm a big fan of Subversion (SVN) or CVS. Developers are free to work on any source code file they need to. When two or more developers work on the same file, they can perform a merge to resolve any conflicts. When using source control technologies, your developers must always provide comments each time they make a new commit to the source control repository. Without this, you may as well just dump the source control software. Developers not commenting? Bad bad bad, have them follow standards. Perform code reviews if necessary.