Of all the practices implemented to improve code quality, such as unit testing, continuous integration, continuous deployment, daily stand-ups, I find the most important one is doing proper code reviews.
Code reviews have a lot of advantages:
- It’s much easier to spot problems with other people’s code than with your own
- Knowledge of the codebase is spread through the team, thereby avoiding the pitfall where certain developers have sole knowledge of a subsystem
- General knowledge of the team is improved as new methods or practices are visible to everyone
- Adherence to code standards are enforced
It can be a bit awkward in the beginning, but once you have found a good flow, you’ll notice a big change in how software is developed, not only in terms of quality but also in terms of the morale and coherence of the development team.