Reflect on giving and receiving effective feedback

Completed

You're now familiar with the characteristics of wise feedback, and you've been using them to help your team members. You observe a marked improvement in the developers' programming skills and the team seems to be in high spirits.

This unit will explore a few hypothetical scenarios that you can use to reflect on and practice exchanging effective feedback.

Scenario 1

After the first team meeting, you and your fellow developers brainstorm a few ideas and decide to do a peer review of the ideas that you have for the game. One of your team members approaches you with their peer review feedback. You have received the initial ideas that your team member has for the game. You like some of the ideas but some of them are too ambitious to implement within the given timeframe for the project. You realize that this team member has misunderstood some of the key game constraints that had been discussed during the meeting, which could be because English isn't the developer's primary language.

The team member is also upset because they received the following feedback from another developer during the peer review process:

"This code is wrong. It demonstrates that you haven't understood the main algorithm required to complete this project. You won't be able to complete the project without understanding the algorithm requirements. Let me know if you want me to rephrase the problem in simpler language."

Analyze this scenario and note down your answers to the following questions:

  • How would you feel if you received this feedback?
  • What signals do you think your reviewer is sending? Do you feel that your proficiency in English is being questioned?
  • Is this feedback effective, in your opinion? If not, why?
  • Do you think this feedback can help the developer improve? If not, how could the reviewer have worded the feedback more constructively?
  • If you were the reviewer in this scenario, how would you make the feedback more effective?
  • What role do you think identity might play in how the feedback was perceived? If you were the recipient, do you think the feedback would reinforce your trust that the reviewer wants to facilitate your learning process?

Scenario 2

Each team member has been writing code and submitting it to the other team members for peer reviews. When you review one team member's code, you find several syntax and logical errors. As a result, the program won't compile. You know that this team member has a shy, reserved nature and hesitates to speak up in front of other team members. You need to help the team member build confidence so that they feel encouraged to contribute their ideas actively. Consider the following options for providing feedback:

  • Option 1: You approach the team member and provide your feedback in the presence of other people. You mention, "The code doesn't work. There are several errors. You need to review your knowledge of the Java programming language." You ask the team member to rework the entire code and to submit it again for your review.

  • Option 2: You schedule a meeting with the team member and conduct the discussion in private. You point out some of the errors in the code. You inform them that there are other people on the team who are better at writing these kinds of programs. You suggest that the team member ask one of the other more experienced members for help.

  • Option 3: You schedule a meeting with the team member and conduct the discussion in private. You've printed out the code and have added detailed comments about the errors. You start out by telling the team member, "I like your approach, and the algorithm is okay. It just needs a few small changes to make the logic better. I got a few compiler errors when I ran the code, which you should review and rework." You then explain in detail what should be done to fix these errors. You then ask, "Was there a particular part of the program that you found more challenging to code?" You listen and then suggest additional resources that the team member can use to learn more. You suggest some practice exercises that will help familiarize the team member with the syntax rules. You also offer to provide similar coding examples for reference and to provide additional guidance, as needed.

  • Option 4: You tell the team member, "I've received a lot of compliments about your work. I am confident you will be a valuable addition to the team. However, I noticed that you tend to remain silent most of the time during team meetings. I'm concerned about this, and I'd like to know if you're facing any difficulties here. I know that you're still new to the team and are just beginning to get to know the other team members. Let me know how I can help you feel at home with this team."

Consider the following questions:

  • Which of these feedback options do you think are most effective, and why?

    Suggested answer: Options 3 and 4 are the most effective. The feedback in these options provides specific details on what's wrong, reinforces what's right, and provides strategies for improving the developer's skills.

  • Which of these feedback options meets all criteria for effective and wise feedback?

    Suggested answer:

    • Option 3 meets all the criteria for effective and wise feedback. It starts by signaling the intention of the reviewer and reinforcing confidence in the recipient. It also provides specific details on the errors. Finally, it provides suggestions for next steps that the developer can take to improve their programming skills.

    • Option 4 also signals intention and addresses a different type of issue by displaying empathy, understanding, and a sincere desire to help the team member.

  • Which of these feedback options don't qualify as effective or wise feedback, and why?

    Options 1 and 2 don't meet all the requirements for effective feedback:

    • Option 1 might put the developer on the defensive by embarrassing them in front of other team members. No one likes to be criticized in public. Moreover, the feedback doesn't really provide any helpful direction on what was wrong, how the developer can rectify the mistakes, or the steps the developer can take to bridge their knowledge gaps.

    • Option 2 might negatively affect the developer's confidence by implying that other people on the team have better skills. It doesn't reinforce confidence in the developer that they can rise to meet the high expectations. It provides only a temporary solution to the problem at hand instead of concrete steps for their self-improvement and personal growth.

Reflect on the following questions and think of the various ways in which you can provide effective and wise feedback:

  • Can you come up with an example of criticism and how it could be delivered wisely?
  • Why does it matter how a person delivers feedback? Isn't honesty the best policy?
  • Why do you think a feedback provider might hold back negative criticism?
  • Why do our identities—race, gender, or other ways we think about ourselves and others—affect interactions about feedback?
  • What is the potential harm to people who fail to receive specific, candid feedback?
  • How can a reviewer improve the quality of the feedback when the recipient might not yet trust them?
  • What strategies might help both parties to contribute to successful communication?

Scenario 3

Your team leader informs you of a critical deadline that you and a colleague need to help your team meet. The team needs to implement an important security update to the website within the next couple of days. The code will require significant updates, and your colleague doesn't have as much programming experience as you do. To save time, your team leader asks you to perform a first-level review of your colleague's code.

During your review of the code, you find that your colleague has made errors in the logic and functionalities of the program, which will lead to security lapses on the website.

Reflect on the following questions, and think about what you should do to ensure that your feedback is constructive and effective:

  • What do you think would be different about communicating this feedback to your colleague through conversation versus in writing?
  • Would the method you choose depend on whether the feedback was positive or negative, specific or general?
  • Consider how you would react if you were the one receiving the feedback. How do you prevent letting the fear of receiving feedback or the sting of receiving difficult feedback from improving your work?
  • When you're unpacking feedback you've received, what strategies can you use to understand which parts of your plan are strong and which could benefit from revision?

Tip

Performing a code review requires both technical skills and effective feedback strategies. Like any other process that must be learned, giving and receiving feedback gets easier with practice.

1.

Which one of the following statements accurately describes the purpose of signaling attention while giving feedback?