Giving Feedback with Ambreen Hasan

Episode 10 covers how to give feedback, what to think about as you're giving feedback, and how to help others get better at giving feedback.

All this expertise comes to you from Ambreen Hasan (@ambreenhasan on Twitter or ambreenh on Instagram). Ambreen started in tech as a Rails developer and has now transitioned to being a Jane-of-all trades working across many different technologies. Throughout her career, she's regularly been approached for feedback because she gives critical feedback in a way that doesn't make you feel bad about yourself and your abilities -- a truly remarkable skill.


JENNIFER: Welcome to Storytime with Managers, a podcast by Cohere.

Hi, I’m Jennifer Tu, and I’m here with Ambreen Hasan to talk about how to get feedback. Ambreen, can you say a little about yourself?

AMBREEN: Yeah. Hi, Jennifer. A little bit about myself. Well, I’ve been kind of working in tech for the past few years. I started out years ago as a Rails developer and now sort of transitioning in to just kind of like the Jane of all trades, just kind of working on different technology. Yeah, a little bit about me.

JENNIFER: Cool. One thing that I’m really excited to talk with you about today is I know that a pretty common situation you’ve experienced is one where you’ve been asked for feedback on some code and the code is bad. And oftentimes the person who asked you for feedback isn’t really expecting you to actually give feedback. And every time I’ve seen you do this, you managed to be very kind as you explain why what they want to do is a bad idea. I’m wondering if you could walk me through what you’re thinking about when that happens and what you’re thinking about before you start to give feedback to that person.

AMBREEN: Sure. Stepping back from just going into feedback in general, I think giving feedback and even receiving feedback is very stressful from either end. No matter whether that person is expecting anything, I think it’s a very stressful situation for both parties. And I try to kind of lighten up the situation. And also, being a part of a team, stepping in that direction, being a part of a team too, everything is like a team effort. And I try to add that as a part of the feedback. With code reviews, what I try to do is if I see something that could be improved, rather than saying, like, “You should do this,” because I think it’s a team effort, I say, like, “Maybe we can think about doing it this way.” I think phrasing the question in terms of like us versus we kind of makes the person feel like they’re not being attacked because it’s a team effort. And I think also just kind of providing examples, “Either this or that,” also provides them too, in terms of like, “You told me to make this change, but what do you want me to do,” has always sort of been helpful.

But also, I always kind of end all of my feedback too with, “If you’d like to talk about this in person or if you need more examples, I’m happy to talk about it,” to kind of show that nothing’s really set in stone, but everything’s always a discussion and it should be. So, that’s kind of like how I like to approach things.

JENNIFER: Yeah, that sounds really great. I’m kind of curious about what you said about things are very stressful, so you try to lighten things up. I’m wondering what you do to make that happen or what you’re thinking about in order to accomplish that.

AMBREEN: I try not to think of anything as like serious. [Laughs] I don’t want to think about anything serious or anything as dire. I think that sometimes when people kind of give feedback or they’re receiving feedback, it’s sort of like end of the world. I really don’t think it is. I think even adding like a joke or two. Sometimes in my feedback, I will add a GIF. It will be like, “Hey, great job.” It’s probably like someone with their thumbs up or something.

I remember this one time in a feedback, I caught a spelling mistake and I think I had like a breaking bad GIF of this guy saying, “I don’t got time for spelling.” [Laughs] So I just kind of lightened the mood up to be like, it’s not that serious, we can all have fun learning. Because learning in and of itself, whether you like to or not – not like to or not – but whether you know what you’re doing or not, it’s stressful. Learning can be stressful. And so, I was trying to kind of make it so that it’s not, if I can help to facilitate that.

JENNIFER: Well, the GIFs idea is a really good idea. Are there any particular places you go for GIFs or what do you do to think of what to include?

AMBREEN: I usually go to and I’ll just search random things. If I’m approving a PR, I’ll probably try to find something where someone’s doing a thumbs up or someone celebrating something. There’s some PRs where people have to work maybe like a week to finish that PR. And so, I think it’s sort of helps to be like, “Yay! You did this. I know you can.” And I try to find a GIF of people celebrating where there’s confetti because it’s a huge accomplishment. Someone spent so much time in a week trying to get this PR done that I like to be like, “I recognize your accomplishment. Here’s a GIF with a bunch of party people.”

JENNIFER: All right. Yeah, I like that. Here’s a different question about what to do mechanically and that’s, how do you structure your feedback? Do you start writing as soon as you read the code or do you read everything first and then pick something to say? What do you do?

AMBREEN: I think what I try to do first is I try to look through all the files first. Even as I’m looking through it, I do have assumptions and questions, but I try not to comment first because I assume that I might be able to figure out those questions as I’m reading the file. Sometimes they’re sort of like, “Huh, there seems to be a variable here, but I can’t see where it’s actually being used.” But I think it’s helpful to just kind of look through it first. But having those questions and assumptions is nice because it allows me to know what I’m looking for. And then it’s until I’m actually done reading all the files, I’ll start actually adding comments about questions I just wasn’t able to answer or figure out myself. That’s kind of the way that I go about things.

JENNIFER: Yeah, that’s super helpful. Thank you. How about how people react to your feedback? I’m wondering if you’ve ever had anyone have a negative reaction to your feedback and what you did to recover and repair that.

AMBREEN: There’s definitely been sort of push back in sort of advice. Some examples I’ve had in the past where I was like, “Hey, I don’t really think this method really belongs in a controller. You could like refactor this so that maybe it’s either in a utility class [inaudible] or maybe it’s in a model, just somewhere where it doesn’t look so cluttered.” And so, I did receive push back for an advice like that. And I think it was just because, they’re like, “Oh, it’s temporary code. Let’s just keep it in here for now,” rather than providing effort for it. And so, I try to kind of reason where I’m like, “That person does have a point.” Sometimes it’s sort of like do something just because it looks cleaner or just because it’s convenient for that person to just be able to remove that code once it’s able to.

So, I think with push back, I try to understand where they’re coming from. I think that we have our own biases sometimes in terms of like, “This is the right code, this is the right way to do things.” But I think it’s important to kind of see from the other side in terms of like, everyone kind of does something for a reason and try to understand why they did that.

JENNIFER: So, you’re looking for empathy for where the other person is?


JENNIFER: Have you ever had more of an emotional push back rather than a contextual push back?

AMBREEN: Yeah, there’s been sort of some where I was kind of working with a frontend engineer or someone who’s more frontend focused. And I was someone who was more backend focused and I tried giving advice to them in terms of like, “Hey, maybe we should do it this way,” sort of like in favor of the backend approach that I thought would be better and kind of received a lot of push back there because it was sort of – I guess each part of you will sort of like, “This is in favor of me, and so I want to do it this way because it helps me do it better.” And I think that’s what that sort of pushed back to. I think sort of like this conflict resolution in terms of that. I think I’m the sort of person that would just be like, “If that is helpful for you, let’s just go with it.” But I’m not the type of person that’s going to forcefully push something if that other person does not want to do it that way. And that’s kind of my feedback. I mean, my way of doing things is like if it just helps the other person, let’s just go do it. And I can find another way to do something. That’s kind of an example that I have. That’s one that I can think of right now.

JENNIFER: No, I feel like that’s great advice of if someone is giving you a lot of push back and you’re finding yourself in a fight, then don’t have that fight. It’s not worth it. You’ll find a different way around it, and you don’t have to have all these hurt feelings. So, I feel like that’s really great advice.

AMBREEN: I think sometimes, as I said in the beginning, it’s not serious. Just let it go, push your ego aside. Let it go. If that person wants to do it that way, maybe eventually you’ll be able to see why. It works both ways. Maybe I’ll eventually see why that was the best solution, or maybe that person will eventually see why your solution was best. But I think we also learn in our different ways. And I don’t think forcefully pushing someone to learn in your way is really the right way to go.

JENNIFER: Here’s a different question, speaking of keeping it not serious. One thing I’ve noticed is that you’re often sarcastic and I have been on the receiving end of that deservedly, but I didn’t feel embarrassed by it. And so, I want to know, what’s your secret? How is it possible for you to be sarcastic and for people to not feel bad about it?

AMBREEN: I’ve often thought about this. One thing I want to say is I feel like I’ve always been like this. So, I feel like I’m unconsciously doing this. Sometimes I don’t really know why or how I do it because I guess it’s just how I am. But also, I think it kind of comes to the fact that yes, I’m joking with you, but I don’t want to make you feel bad about it. I’m not here to make fun of you. It’s kind of like stating the facts without being hurtful. It’s sort of like being honest, but not being nice. You know, when you’re trying to be nice and stuff, and you’re just trying to make the other feel better about it, but you may not actually mean it because you’re just trying to be nice. But being honest is sort of like, “Ha, ha, ha. Maybe you shouldn’t have done that.” It’s like a learning experience where you’re kind of calling someone out but not trying to be hurtful versus just like, “Oh yeah, it’s okay,” because sometimes it’s not okay. But everyone makes mistakes. It’s all sort of a learning opportunity.

JENNIFER: One thing I’m wondering is, have you ever been sarcastic and meant not to hurt the other person, but the other person was hurt anyway?

AMBREEN: Oh yes, plenty of times.

JENNIFER: What do you do?

AMBREEN: It depends. If I feel like I kind of went too far, and nearly I do. Sometimes I think I go a little too far and I’ll just say, “Hey, man, I’m just playing. I’m just joking with you.” I don’t just sort of say I’m sorry. I’ve made jokes, and I may have touched a sensitive area. I try to recognize that and I try to read people’s faces and be like, “Okay. I think I took it too far this time.” Then I’ll just do some apologizing. If they want to talk about it further, fine. But if they don’t, that’s cool. But I think it’s important, if you’re joking with people, just check in with them. Be like, “Hey, are you okay? I’m sorry if that offended you.” And I will be sure not to make jokes about that again.

JENNIFER: All right. That seems like a pretty good recovery method.

AMBREEN: Yeah. And if that person does even want to talk about it further, I can’t push them either.

JENNIFER: I think we’ve got time for one more question today. So, our listeners are likely both learning how to give better feedback themselves and also might be in a position in which they need to coach other people to give better feedback. And I was wondering if you have any advice for how to teach giving better feedback or how to give feedback on giving feedback?

AMBREEN: I think in terms of giving feedback and advice on that, I think it’s important to provide examples because you’re really kind of giving back. It kind of helps the person. Rather than saying, “Hey, you should be a better coder,” or something, provide examples. What could I have done better? So, provide examples. I don’t like reiterating this over and over, but don’t be serious about it. I mean, serious in terms of, you are serious about your feedback, but the way that you express it and stuff like that, in terms of helping them kind of learn and having that person not feel like they’re being attacked is sort of the way that I think you can express it, and be like, “In these specific areas, I thought that you could have it done better because XYZ and it’s like that.” Maybe adding a bit of a joke to it or something. I try to add pop culture references. I think that kind of helps sometimes. But reiterating back on that, try to lighten the mood, provide examples so they can get an idea about what you’re talking about. And I think last but not least, check in with them, more often than not. But check in with them to be like, “Hey, how are things going? Is there anything that I could do?” Or, “The feedback that I provided, is that helpful? Is there another way that I can help you?” That would be my advice on giving advice?

JENNIFER: That is awesome, awesome advice. Thank you very much. This is unfortunately all the time we have for today. Ambreen, if people want to talk with you more about this or other topics, what’s a good place for them to reach out to you?

AMBREEN: I am on Twitter and I do respond. My handle is @ambreenhasan. But also, if not Twitter if you’re more of an Instagram person, I do have Instagram as well. And I do check that probably more often than Twitter. Or you can add me there at @ambreenh.

JENNIFER: All right. Thanks so much.

AMBREEN: Thank you. Thank you for having me.

JENNIFER: Thanks for listening to Storytime with Managers by Cohere. Our theme music is by Kevin MacLeod and we’re edited by Bryant from Zinc. If you like this episode and want to hear more, tell us on Twitter. We are @wecohere.

Giving Feedback with Ambreen Hasan
Older post

Managing Managers, Remotely with Juan Pablo Buriticá

Episode 9 is a whopping twenty-six minutes because there was so much I wanted to keep asking my guest, Juan Pablo Buriticá (@buritica on Twitter). Juan Pab...

Newer post

From Engineering To Product And Back Again with Denise Yu

In Episode 11, Denise Yu (@deniseyu21 on Twitter or check out her website shares specific actions engineers can take to grow their e...

Giving Feedback with Ambreen Hasan