(This post was originally published on thetimelydeveloper.com)
If I were to ask you how good a developer you are, do you think you’d be able to give me an accurate answer? Would your colleagues agree with your assessment or would it be skewed in your favour?
In their book Apprenticeship Patterns, Dave Hoover and Ade Oshineye encourage readers to “Create Feedback Loops” in order to mitigate against this bias we all have. Today’s post will explore the importance and benefits of feedback.
(This post is part of a series inspired by the book Apprenticeship Patterns. Find the rest of the series here.)
Imagine for a moment that you wake up one day and, unbeknownst to you, are incapable of feeling pain. You climb out of bed, put on your jogging gear and go for a run. As you hit your stride you realise that it feels easier than usual and so you push yourself harder. Your breathing gets heavier but physically you feel okay so again you up your speed.
Having finished your usual route at a record pace, you sit down to take off your shoes only to find your feet bloody and torn. A day later your legs fail to support your weight.
We see a problem here; what seemed like a good thing to you at the time turned out to be significantly damaging. Without the physical feedback of pain, you kept going faster and harder until you broke yourself. Likewise, in your work, if you are lacking feedback or are oblivious to it then you will inevitably do damage to your career and your product.
As another example, imagine that your software had no tests, or that you simply never ran them. Would you be confident that after six months of active development you would have a well-functioning product? You may not have considered tests to be a form of feedback, but it is the most common that we developers use on a daily basis.
We are lucky in that pain is given to most of us for free. If we do something that is damaging to us, we almost immediately feel pain and learn not to repeat that action. We are not so lucky in the world of work, however. We must deliberately create our own feedback loops, as discussed in Apprenticeship Patterns, if we are to thrive in our careers.
In the field of systems thinking there are two main types of feedback.
Let’s jump back to the concept of pain for a moment. We don’t usually consider it as feedback, but pain is massively important to our well-being. Without it, we would often find ourselves in situations similar to the one described above. Pain, in such a case, is what regulates our actions to stay within safe limits. Pain is a type of balancing feedback.
When it comes to your career, balancing feedback usually comes in the form of constructive feedback. Constructive feedback is the kind which points to areas of potential improvement. People often link the term constructive feedback to negativity, but this is a mistake. If someone asks you to raise the volume of your voice during a presentation so that they can hear you more clearly, is that inherently negative? I don’t think it is, and yet this is a form of constructive feedback.
The focus of this post will be on constructive feedback, as I believe that it is the most important for the purpose of growth.
On the other side of the coin is reinforcing feedback, which is characterised by an increase in particular behaviours. Much like constructive feedback, we should be careful not to think of reinforcing feedback as inherently good. Consider the following:
A senior business person comes to you and asks you to finish a feature ASAP. They’re putting a lot of pressure on you to get it done, and so you start to take shortcuts with your work; a skipped test here, some tech debt there. Before long you’ve finished the feature and you show them the finished work. They’re absolutely elated and clap you on the back, telling you much how much they appreciate it and promising to return the favour at some point. You feel pretty good about yourself; it’s nice to get recognition from one of the higher-ups for once.
This is the kind of reinforcing feedback that you should avoid. To maintain your reputation as someone that gets things done quick, you will continue to be pressured to take shortcuts that will compromise the quality of your work.
Positive reinforcing feedback does exist however. When someone compliments the thoroughness of your testing strategy, or comments on how cleanly your code is written, they are providing positive reinforcing feedback. You should accept such feedback gladly and use it to identify your strengths. Likewise, you should provide it to others when you see them behaving in ways which are beneficial to themselves and the team.
Okay, so you understand what types of feedback to expect, now it’s time to start thinking of how you can collect it in your own life. As I mentioned before, I’m going to be focusing on constructive feedback in this post since it is the most useful for coming up with ways you can improve.
In most cases, you are going to have to explicitly ask for feedback, for two reasons: people are busy, and giving feedback is hard. To expand on the first point, more often than not people are focused inward on themselves and what they are doing. As a result, they may not often be thinking of ways in which you could improve yourself or prioritising letting you know. Without prompting, most people will not actively look out for these details.
To the second point, giving constructive feedback can sometimes feel uncomfortable by its very nature, since the giver is pointing to areas in which you are perhaps not maximising your potential. Imagine, for example, that you have to tell the next developer you work with that their variable naming goes against all common conventions and makes their code difficult to read. I know I wouldn’t find it easy.
To make it as comfortable as possible for the feedback giver, show them that you are happy and open to listening to their suggestions. Let them know, implicitly or explicitly, that you won’t take anything personally and that you are asking with a genuine desire to grow.
Being too general when asking for feedback can be a frustrating and confusing experience for the person giving it. Questions like “how do you think I’m doing” or even just “can I have some feedback please?” can often feel impossible to answer, since they are so broad. Most people do not have the time or patience to focus and comment on every aspect of your behaviour.
Instead, ask about specific things that you think you can improve upon. For example, you might ask a team member in what ways they think you could improve your explanation of technical concepts. This focus allows them to come up with more useful suggestions, since they aren’t left second-guessing the skills they think you might want to improve.
I know, this goes against what I just said in the previous point, but giving them the opportunity to give their own suggestions is important. If they are not given the opportunity to speak up, then many people will let things slide under the rug.
If you are asking for feedback verbally, then you can simply say something along the lines of “If you have any other feedback for me, just let me know and I’ll be happy to hear it”. When using a form to collect your feedback (discussed below), then you can simply ask an open-ended question with a text box input.
Collecting feedback face-to-face is incredibly important, since it allows you to ask for clarification immediately if needed and enables conversation. However, sometimes face-to-face feedback simply isn’t practical for any number of reasons. A useful alternative in this case is a tool like Google Forms.
There are several benefits to using tools like Forms. For example, it allows you to ask a specific set of questions, and gives the person being asked plenty of time to give well-thought-out answers.
Another major benefit in my opinion is that it gives you creative ways in which to ask questions. For example, I’ve seen people ask for a rating on a scale of 1 to 10 for specific areas, or agree/disagree statements with “Why do you think this?” follow-up questions. Approaches like this make the process easier for the person filling out the form, thus increasing your chances of getting a response.
This is an approach that I have experimented with occasionally. If you are asking about something that you think has been particularly frustrating for the other person, then lead with your own observations on the situation to make them feel better about contributing.
For example, let’s say that you are pairing with someone but you keep getting distracted by your phone because you are trying to resolve a maintenance issue with your landlord. You notice your pair getting visibly agitated with your behaviour, but they haven’t said anything.
In a situation like this, you might say something along the lines of “I’m aware that I haven’t been the best pair recently and have spent a lot of time distracted, would you agree?”. By doing this you are immediately making it known that you are aware of a potential problem and that you won’t be defensive while discussing it.
It’s important in situations like this that you genuinely believe what you are saying. You should never give a false opinion just to get a colleague to talk.
A great way to enable and encourage feedback is to engage in what is called speedback. The concept is a simple one: apply the rules of speed dating to giving feedback. Your entire team sits in a room and splits into pairs. Each member of the pair has two minutes to give the other feedback on a given topics before switching roles. Once the four minutes are up, the pairs rotate. Rinse and repeat until you have shared feedback with every other member of the team.
Speedback is particularly effective because it reduces the stigma attached to giving feedback and creates an environment in which everyone should be open to giving and receiving it.
One downside of speedback is in its natural brevity. Two minutes isn’t usually enough to talk about any topic, and this includes feedback. Make sure that you note the things your colleagues are saying and follow up with them to gather more information.
Let’s face it, we all think we’re pretty great in general. Even if you regularly practice reflection, your estimation of yourself is likely skewed in your favour.
The authors of Apprenticeship Patterns note that when assessing your own ability, you only really have your less experienced self to compare to. In that light you will almost always look good.
Asking for someone else’s likely more objective opinion is a much more reliable metric of how you’re doing. This is especially true if the person you are asking is more senior, since they have already had the opportunity to learn what works and what doesn’t and can share it with you. This leads nicely onto my next point:
Asking for feedback opens the door to learning from others’ experience. Why go through all the same troubles as your colleagues?
Think of a problem that you’re dealing with at the moment. I guarantee you that someone you know is either going through the same or has already been through it. If this is true, you could do a lot worse than asking them how they dealt with the problem.
In this way, asking for feedback can save you a lot of unnecessary work.
What are your five biggest strengths and weaknesses? If you don’t know the answer to this question, especially your weaknesses, then how can you know how to effectively improve yourself?
You may think that you know the answer to the question and could write the list of ten items in a flash. But we’ve already seen that self-assessment can often be unreliable; if you showed that list to your colleagues, would they agree?
In order to improve yourself you need to know in which areas you have the most opportunity for improvement. Feedback can give you the answer.
As with most things in life, information without action is mostly useless. Once you have collected feedback from your peers, you need to react in some way in order to grow.
It is important to remember however that you have no obligation to accept any and all feedback that you receive. If you fundamentally disagree with something then you can choose to ignore it. I would recommend that you at least consider each piece of feedback as containing an element of truth. Your peers are unlikely to mention something that is completely false.
I haven’t delved into what makes for good feedback, but one property is that it is actionable. The information you have gathered should point towards specific improvements that you can make. It may also tell you how you should go about making those improvements. If it does, then go ahead and make the changes! If it doesn’t, then look for ways in which you can improve, either through personal research or by asking colleagues, then implement the changes.
Once you have recorded your feedback and acted upon it, make sure that you follow up with each person that gave it to you. Your goal when acting on feedback is to grow as a person. Thinking that you have is not enough; you need some way of validating it, and who better to ask than the person who pointed it out to you in the first place?
I hope this article has been helpful for you! It would be remiss of me to write a post on feedback only to neglect asking for it. Let me know in the comments below what you thought of the article and if it was useful to you.
Have you benefited in any major way from feedback in the past? Do you have any methods of collecting or using feedback that I haven’t discussed here?