Best way I've seen is to have peer code reviews. Have different people from across the team review each others checkins. Every. single. checkin. It can be a quick "buddy check", or a longer code review for a big meaty feature. It's totally fine if a junior dev reviews a senior dev's checkins. This has the side effect of cross-training, catching bugs, preventing things from getting territorial, communication, and learning.
If everyone is looking at everyone's code, the team will form a pretty accurate opinion (at least within the team's context of what makes good code.)
If everyone is looking at everyone's code, the team will form a pretty accurate opinion (at least within the team's context of what makes good code.)