Engineers' Guide to Feedback
A Practical Framework for Delivering Effective Feedback
Feedback is what oils and fuels relationships between individuals, so it’s one of the main drivers of success in a team. When we think about feedback, we often see it as a one-way relation, where Engineering Managers (EMs) give feedback to their team members. However, feedback is what regulates any kind of relationship, and it must always be seen as a two-way exchange between two or more people.
For this reason, while writing this guide, I decided to keep it generic enough in the hope that the principles I’m going to describe will be applied both by EMs and individual contributors who are part of their teams.
Moreover, as a manager with an engineering background, I know we need practical advice; no BS is allowed. That’s why, even though we will touch on some psychological aspects of giving feedback, I’ve tried to make this guide as actionable as possible including the framework I use to give feedback and a real-life example.
Here's what I’m going to cover:
❓What is Feedback and why it’s important
🏗️ My Framework to Give Great Feedback
💡 Tips to make your feedback effective
🤔 What is Feedback?
The word "feedback" has its roots in the realm of mechanical engineering and dates back to the 1920s. It originally referred to a process in which a portion of the output of a machine, system, or process is looped back into the input, effectively controlling or stabilizing the operation of the system.
The term is composed of two parts: "feed" and "back." When combined, they literally suggest the idea of returning or feeding something back into itself.
It started to be used metaphorically in the mid-20th century in areas like psychology, education, and management, indicating the process of providing information about a person's performance or behavior with the intention of improving or modifying future actions or behaviors.
The Importance of Exchanging Feedback
There are many obvious reasons why exchanging feedback is important in every relationship, but it becomes even more crucial in high-performing engineering teams.
Here is why:
🛠️ Quality and Precision: continuous feedback ensures high standards in engineering work through timely identification and bug fixes.
📊 Data-Driven Decisions: exchanging feedback helps in making informed decisions based on data and performance metrics.
🔄 Agile Methodologies: it supports agile practices, essential for iterative development and rapid response to change (think about retrospectives).
👥 Team Collaboration: promotes effective communication and collaboration, essential for complex engineering tasks.
🔄 Continuous Improvement: facilitates ongoing development of skills and processes, keeping the team innovative and competitive.
🚀 Rapid Problem-Solving: enables quick identification and resolution of technical issues, crucial in fast-paced IT environments.
🛡️ Risk Management: identifies potential risks in IT projects early, allowing for proactive measures and solutions.
📚 Knowledge Sharing: fosters a culture of learning and knowledge exchange, crucial for keeping up with evolving IT trends.
Types of Feedback
Frequently, we hear about two types of feedback:
✅ Positive Feedback
🛑 Negative Feedback
However, I believe this simplistic differentiation is prone to bias and confusion.
I prefer to distinguish between:
🎉 Celebration (I wrote about that here)
These are two different moments.
As mentioned before, feedback is the process of informing a person about behaviors that should be changed to improve a process. This is not necessarily something negative and it should be kept separated from celebrations.
I know this might sound like semantics, but it's not. It's the first step in delivering effective feedback: mindset. Understand that feedback is a building block of every relationships or processes, and it's not inherently negative.
You might now argue:
Ok, but if I tell John something like: “The code you wrote is s**t!”.
This looks like a negative feedback.
That's true, which is why it's so important to learn how to articulate effective feedback and avoid confusing it with criticism or offense (like in this example where I deliberately exaggerated 🙂).
🏗️ Crafting Effective Feedback
Before even starting to deliver your feedback it’s fundamental to understand the individuals involved in this interaction. To do that we’ll ask help to psychology and in particular to Transactional Analysis.
Transactional Analysis (TA) is a psychological theory that helps us understand how people interact with each other. Think of it like a guide for understanding social interactions. It was developed by Dr. Eric Berne in the 1950s.
The theory itself is very complex and articulated, so let’s simplify it and extrapolate the most important parts that are interesting for our purpose.
TA proposes we have three parts in our personality, like actors in our mind:
👴🏼 Parent: this state contains attitudes and behaviors incorporated from external sources, primarily parents. This communication state often includes criticism, reprimands, etc.
👶 Child: this state represents the early childhood responses and feelings. It can be free (natural, spontaneous) or adapted (changing oneself to fit in).
👱♂️ Adult: this is the rational, objective part of personality. Communication from the Adult ego state is about direct, factual, and non-emotional responses.
The main focus of TA is on 'transactions', which are basically the exchanges or communication between people (in our case feedback). When two people interact, they're each coming from one of their ego states. The way they communicate can tell us a lot about their relationship and the dynamics between them.