It’s very common in software engineering to recognize there is a right way to do things and then there is everything else. Often, that “everything else” is the wrong way to do it.
For instance, using no design pattern or an incorrect design pattern (i.e. a behavior pattern for a concurrency problem) would be “everything else”.
Typically, a team will do things for a very specific and logical reasons. A Scrum Master should not immediately assume a team member is “doing it wrong”, instead keep an open mind and determine the situation and logic behind what was chosen. For example, have members of the delivery team hear the reason during a breakout session from a daily scrum. Then have the team decide if the reasoning is acceptable, keeping empathy and “trying on the other person’s shoes” helps foster trust and transparency. If they are doing it wrong, at least they can find out why and come to an agreement.
As a servant leader, the Scrum Master should promote and encourage empathy within the team, but at the same time recognize that there is always room for improvement. There is a balancing act that should be made for picking where to make the most improvements and that can be identified, organized and prioritized during retrospectives.
Keep in mind that not assuming someone is “doing it wrong” without empathy even if they really are doing it wrong. Give them the benefit of the doubt and show empathy when showing mistakes or oversights to others. This will build team productivity and as a result, increase velocity and team value.