In a typical development workflow, there are various review stages — product spec reviews, design reviews, test case reviews, code reviews, and so on. To conduct these reviews, meetings are inevitably introduced. Some people might think these activities are useless and a waste of time. In reality, they are extremely important. If you have the impression that reviews don’t matter, it’s likely due to one of two reasons: either a lack of understanding, or poor review practices in your environment.

Regarding the value of reviews, the most significant impact for a team is raising the team’s baseline. Imagine if no reviews were conducted at any stage — a product spec is handed off, developers just start coding, and any individual oversight could bring endless risks to the entire project. Multiple review stages essentially describe a business solution in different forms — product specs, code, test cases — and then involve more people to inspect each form, preventing individual oversights from creating business risks.

Furthermore, the focus of this article is to discuss the value of participating in reviews for an individual, beyond the benefits it brings to the team.

First, for the person being reviewed — the author of the product spec, code, or other deliverables — a review is essentially a process where others help you improve. It’s a rare opportunity to receive direct feedback. For many people, compared to their student days, the biggest challenge of learning during their career is that no one “grades” their homework. After reading books or watching videos, there’s no way to confirm whether they’ve truly understood the material. Timely feedback, regardless of what you’re learning, is crucial. Among the reviewers will be your superiors and more capable colleagues. If they can thoroughly understand your solution or code, they can certainly provide valuable feedback. A review essentially gives you the opportunity to receive their feedback.

This implicitly requires the submitter to express their solution clearly, so others can participate in the review with minimal effort. For example, when writing code, use appropriate design patterns and write readable code. When writing documents, have a well-organized layout with proper sections and highlight key points. When presenting a solution to others, consider the audience’s knowledge background to ensure they can understand your proposal.

Another important aspect of reviews for the submitter is risk and responsibility sharing. Regardless of your company’s policies or your position, when a project you’re responsible for doesn’t go well, a significant portion of the consequences will ultimately fall on you. This may come as direct performance penalties, or as others questioning your capabilities — either way, it’s something nobody wants to face. Reviews transfer some of these consequences to the entire team. Of course, don’t think too much — the primary responsibility still remains with the submitter. This again highlights the importance of clear expression. The submitter needs to ensure that the key points of their solution are effectively communicated to the reviewers. If the reviewers successfully absorb this information, have thorough discussions during the review, and reach a consensus, that part of the decision can be considered as jointly made by the team.

Now, let’s look at the value for reviewers — what does actively participating in others’ reviews offer? The primary benefit is a learning opportunity. As the saying goes, “When three people walk together, there must be one who can teach me.” From others’ solutions, you can certainly discover excellent points worth learning. When you find that someone else’s approach differs from your own expectations, it’s an opportunity for deep thinking — you can continuously question yourself to determine which approach is better until you reach an irrefutable conclusion. This kind of deep thinking significantly improves your own thinking methods.

Additionally, participating in reviews is also a way to rapidly gain experience. Reviewing is essentially spending review time to achieve an effect nearly identical to doing the work yourself. If you review thoroughly enough, you’ll gain a comprehensive understanding of how something is done, and this experience can fully count as part of your project experience.

This article comes to an end here. I hope you’ve gained an understanding of why reviews should be done and how to conduct them. Feel free to reach out to me through my WeChat official account (Mobility) or personal website.

Source: https://lichuanyang.top/en/posts/57205/