Having a performance review can be daunting, especially if you’re dealing with senior staff members who are at the peak of their careers and may feel they’ve already paid their dues. However, providing regular reviews is critical for pushing your team to be its best.
So how do you address issues with and give feedback to a software engineer and developer?
Providing constructive feedback requires careful planning and a collaborative attitude. If your goal is to lecture your engineers, you’ll never succeed in bringing about positive change in your workplace. But if your goal is to collaborate to continually improve, you can bring about great change and improve your end products.
Why is it important to provide regular feedback?
Providing regular feedback to your team matters. Without feedback, your software engineers and developers don’t know what’s expected of them. Regular, constructive feedback ensures your team produces high-quality software on a consistent basis.
Both positive and negative feedback can be helpful for your software engineers. In fact, a recent Gallup poll shows that employees prefer any feedback over no feedback, even if the feedback they receive is negative.
Positive feedback ensures that they know their own strengths and feel like those strengths are appreciated. As a result, positive feedback can be an extremely effective tool. It can boost employee confidence, which can lead to better results down the road.
Negative feedback also has a place, as long as it’s offered in a constructive way. This is the difference between constructive feedback and critical feedback: constructive feedback helps your developers do better going forward, while critical feedback only serves to tell your team members what they’re doing wrong.
What is constructive feedback?
The goal of feedback is to help employees improve their performance going forward. Unfortunately, only 26% of employees agree that the feedback they receive actually helps them do their jobs better. This disconnect comes from the fact that, all too often, feedback focuses on mistakes that have happened in the past rather than helping employees to improve their work going forward.
Constructive feedback isn’t focused exclusively on past performance. Instead, it coaches employees, helping them improve their work in the future. According to Gallup, this requires a two-way dialogue rather than a top-down approach. Managers can’t just tell employees what they’re doing “right” or “wrong.” Instead, they have to actively listen and work with their team, acknowledging any unique challenges team members are facing and helping capitalize on individual strengths.
This doesn’t mean pretending that employees are always right. An effective manager can lead an effective conversation while simultaneously pushing their team to continually improve.
What are some strategies for providing constructive feedback?
As you prepare to provide constructive feedback to your employees, it’s important to have a plan in place for keeping feedback constructive and useful.
The traditional method of giving feedback was to create a “feedback sandwich,” with negative feedback positioned between two pieces of positive feedback. The problem with the feedback sandwich is that it can feel manipulative. Employees may find themselves ignoring the positive feedback altogether and focusing only on the negative criticism that they feel you actually wanted to convey.
Here are some modern, straightforward strategies for providing constructive feedback to your senior software engineers and developers.
Talk to developers face-to-face
When dealing with a software engineer and developer, it’s easy to keep communication limited to emails or chat boxes. But when it comes to providing feedback, this isn’t the best strategy. Studies show that 50% of texts and emails are misunderstood. When talking face-to-face, either in person or on an app like Zoom, your tone and body language help convey your message appropriately, ensuring nothing gets lost in translation.
Talking face-to-face has the added benefit of making it easy for your developers to reply to what you’re saying and express their own concerns. This helps turn feedback sessions into two-way conversations rather than one-way lectures.
Keep meetings one-on-one when possible
No one likes to feel like they’re being called out in public. When providing feedback, it’s important to do so in a quiet, enclosed setting, ensuring that both you and the developer you’re talking to have time on your schedule for the conversation.
This means that instead of asking a developer to stay after a meeting, you ask them to set aside half an hour later in the day to talk with you. This gives both you and the software developer time to prepare what you’re going to say and ensures you have their undivided attention while you’re talking to them.
It also means that it’s important to have a closed-door meeting with your developer. Unless it’s crucial for others to be there, keep the meeting one-on-one. Talking to a group of people can be intimidating, whereas talking to one other person can keep the conversation flowing in a constructive way.
One of the worst things you can do when providing feedback is not being specific enough.
For example, consider the words, “be more punctual.” In your mind, it may be clear that this means that your developer needs to be more careful about meeting software development deadlines. But the developer may think you’re telling them to focus on showing up to work early each day.
Non-specific feedback can be frustrating for both you and the person you’re communicating with. Instead, lay out a specific expectation or boundary. For example, instead of “be more punctual,” you might have said, “I need you to turn in completed software by the date on your timeline.”
Discuss plans for implementing feedback
Another major reason that feedback may not be as helpful as you’d hope is that employees may understand what’s expected of them but not know how to change things to achieve that result.
For example, consider the developer who’s not turning in software by the deadline. As a manager, what you may not know is that they’re running into bottlenecks because the testing team consistently takes longer than expected.
This is where turning feedback into a discussion becomes important. Instead of sending your developer away after instructing them to meet their deadlines, it’s important to open up a conversation. Ask questions, such as, “what obstacles do you anticipate?”
This invites your developers to explain what the problems have been in the past. Together, you can then develop a strategy for addressing those problems so that results can improve going forward.
What are some feedback examples?
It can be difficult to provide constructive feedback to your senior software engineers and developers, especially if your manager was never particularly adept at providing you with constructive feedback.
The key is to address each situation individually, rather than trying to use a one-size-fits-all script. By listening to what your developers have to say and incorporating their responses, you can help them come up with new strategies for approaching their work and producing top-tier results. And by providing your team with constructive feedback, you also empower them to supervise their own team in a more effective way.
Performance feedback examples for software engineers and developers
The annual performance review is a great time to set long-term goals with your senior software engineers and developers.
Performance should look at more than just the software they actually developed throughout the year. Your performance review should evaluate things like:
- Collaboration and teamwork
- Quality of software delivered
It’s a good idea to list their strengths and weaknesses before you start their performance review so you can prioritize performance review conversations. Remember to be straightforward and specific with feedback while asking questions to create a dialogue between you and your developer.
Here are some examples:
- I’ve noticed that you’ve been sending your team a lot of late-night emails. Can you explain your workload to me so we can help you find a better work/life balance?
- A few calendar items were forgotten this year. How are you currently organizing your days and prioritizing tasks?
- Are there any tools we could provide you with to help make your workday more comfortable and productive?
- What goals would you like to focus on in the next year to help you develop as a professional?
Positive feedback examples for software engineers and developers
For many managers, providing positive feedback is even harder than providing negative feedback. Negative feedback has to be addressed, but it’s far too easy to notice when your developers are doing well without explicitly saying anything.
Just like with negative feedback, positive feedback is only beneficial if it’s specific. A simple “good job” might temporarily bolster your software engineer’s confidence, but won’t help them in the long term. Offering specific feedback helps your developers know what they’re doing well and improve upon their successes.
Specific, positive feedback also shows your employees that you’re noticing them. This is especially important when they’re going above and beyond your normal expectations for them.
Here are some examples:
- I know you’ve been putting in a lot of extra hours lately to make this deadline. It’s never fun, but I’ve really appreciated your willingness to put in the time and your positive attitude both during and after your normal working hours.
- I heard that the client was pushing you really hard on this project. I appreciate how calm and professional you remained on that phone call.
- I’ve noticed you’ve been spending a lot of time coaching some of the junior software engineers and developers. Thank you for helping us develop a strong team.
Negative feedback examples for software engineers and developers
Providing negative feedback can be difficult — when people feel criticized, it’s easy for them to become defensive. This can make it feel like your critiques are falling on deaf ears, which can cause you to escalate.
To keep things calm and constructive, it’s important to remember that your software engineers and developers are doing their best. If they’re underperforming, the most likely situation is that there's some sort of obstacle getting in their way. This could be a personal obstacle, like a situation at home, or a professional obstacle, like coworkers talking loudly in their workspace and making it difficult for them to concentrate.
By viewing problems in this manner, it’s much easier to create an open dialogue with your engineers that addresses problems while also strategizing for an improved future.
And while it’s hard to provide negative feedback without mentioning past performance, there’s no point in harping on the past. Your developer can’t fix the fact that their mistake cost your company thousands of dollars, but they can take measures to prevent that from happening again in the future. You should only bring up past performance as a way to explain the importance of the feedback you’re providing. The goal is to help them develop as a professional.
Here are some examples:
- You missed a deadline, which cost our company X amount of money. Can you explain to me what happened so we can come up with a strategy to prevent that from happening again?
- A client just told me that you were rude on the phone. Client relations are really important to our company because they’re where the majority of our profits come from. Can you try to describe the interaction and repeat to me what you said to them so that I can coach you on having these conversations more effectively in the future?
- I’ve received some complaints from your team that you’re asking for a lot out of them after hours. Can we go over what’s on your team’s plate so that we can come up with a plan to reduce some of their overall workload and improve everyone’s work/life balance?
- There have been a lot of spelling mistakes in your emails lately. Spelling mistakes can make our company seem unprofessional or can make clients feel like you’re not detail-oriented, which can impact their trust in our company. Let me show you how to install Grammarly on your browser so that you can have an easier time checking your emails going forward.
Improve your communication with senior software engineers and developers
Your senior software engineers and developers are some of the most important members of your team. But this doesn’t mean you can let them develop on auto-pilot. Senior team members need senior levels of communication. By improving the way you communicate with your developers and continuing to coach their progress, you can bring out the best in their abilities.