Performance Reviews for Software Engineers
Ever wonder how to do performance reviews without feeling like they’re an awkward waste of time? What if you could turn them into something that actually helps your team make progress?
Performance evaluations can be daunting for both managers and engineers alike. But it doesn’t have to be. This article summarizes how to run performance reviews that are fair, useful, and effective for leading a team of software engineers.
Why do software engineers need performance reviews?
As an engineering team manager, the job of the performance review is to help motivate your report to get to the next level. Sometimes that means a promotion. Other times it means taking on more responsibility. But no matter what, a performance review should help a team member understand what they’re capable of and where they need professional growth.
How do you evaluate engineering performance?
I had an engineer on my team at a previous company who shipped a lot of code. Despite the number of PRs and bug fixes, after 5 years he really hadn’t made much progress. What do you do as a manager in this type of situation?
I could have nudged him to keep getting slightly faster. But most engineers level up with scope of impact, not necessarily speed. In this case, our system had an annoying part that needed the ability to split customers. It was cross cutting and complex. And it broke constantly. This engineer was often the one who jumped in fast to fix it, despite how much it annoyed him.
We had a conversation with constructive feedback about what he could do to change that system so other people could fix it on their own. Instead of developing more reliance on himself, he needed to learn to build a system that enabled others to fix it for themselves. That’s the sort of actionable feedback that results in long-term professional growth for an engineer.
The performance review process provides a way for an engineer to self reflect on their own performance, strengths, and weaknesses. And when someone exceeds expectations, their developer performance review is a way to recognize them for doing a great job.
What to include in a software engineer’s performance review
Engineering managers can make performance reviews effective. Let’s start by discussing suggested areas to cover in software engineer performance reviews:
But performance reviews aren’t just about code written and code quality. It’s also important to be able to debug code, work with others on code reviews, and understand best practices.
Systems Design / Architecture
Software development occurs within the context of a system. Does the engineer have a clear understanding of the business domain they are working in? Software developers need to know more than code. They also must understand the problem they’re trying to solve. The software engineer’s work should be aligned with the business goals.
A great software engineer is a great problem-solver. Can the engineer identify and solve problems? Do they have the decision making ability to move forward with uncertain information? Do they give the problem careful consideration before jumping in? Senior engineers will often have a better understanding of when to take risks and how to mitigate them.
Poor communication can really hurt engineering teams. Each team member needs to be able to communicate their ideas effectively to others, as well as listen and understand what others are saying.
In a remote setting, written communication is especially important. A software engineer has to be able to explain ideas clearly. Communication skills that use good tone, clarity, and brevity are priceless.
In addition to communication, performance reviews should also include feedback on areas such as teamwork, leadership, and mentorship. A software developer should be able to give and receive feedback with other team members.
Software engineering comes with deadlines. Engineers need to be able to manage their time well. They should also exhibit a sense of ownership and responsibility for their work — like maintaining code that’s clean and organized, as well as adhering to coding standards and best practices. Is their code clean and well organized?
Conducting performance reviews should also include a discussion of their attitude towards their work and colleagues. The difference between an engineer who is positive and motivated vs someone who complains and acts entitled is like night and day. No one wants to work with a jerk.
If your company has values, does the software engineer operate in alignment with them? Otherwise, consider how well the engineer works with others. Do they take on tasks willingly and without complaint?
How often should software engineer’s performance reviews be conducted?
Performance reviews should be conducted at least once a year. However, if an engineer is new to the company or is going through a major transition (like moving to a new team), it may be necessary to conduct a review more often.
It’s important for both employees and managers to understand the purpose of performance reviews. Employees need to know what they can do to improve their skills and grow in their careers, and managers need to have a way to track these improvements over time. Performance reviews are an essential part of keeping your team productive and efficient.
Tip: Avoid recency bias and procrastination from putting off too big of a lift. If you have trouble remembering everything that happened over the course of a year, try setting aside time each month to jot down notes about an engineer’s performance.
Performance reviews at Big Tech companies
Big Tech companies like Facebook and Google handle performance reviews by using a multi-step process.
The first step is to set expectations before the review period even starts. Employees and managers should agree on what will be evaluated during the review, such as an engineer’s technical skills or their ability to work well with others.
The second step is to track progress throughout the year. Managers should keep track of how an engineer is doing by recording examples of great work, as well as any areas where the engineer could improve.
The third step is the actual performance review. This is when employees and managers come together to discuss how the engineer has performed over the past year. Managers should provide feedback and rank an employee’s performance relative to their peers.
The fourth and final step is to create an action plan. This is where employees and managers agree on specific steps that the engineer can take to improve their skills.
Bad performance reviews
It goes without saying that a bad performance review is, well… bad. Not only can it damage an employee’s morale and motivation, but it can also lead to conflict between the manager and the employee. There are a few scenarios that can make a performance review go wrong:
Doing performance reviews too early as a startup
If you’re a startup, your team is likely still in the early stages of development. This means that performance reviews should be approached with caution.
You don’t want to put too much pressure on your team by setting unrealistic expectations or coming down too hard on them if they don’t meet your expectations. Instead, take the time to get to know your team and what they’re capable of. Then you can start to implement a more formal performance review process.
Doing performance reviews as a formality
Are you only conducting performance reviews because you feel like you have to? Chances are they’re not going to be very effective. Reviews should be approached as an opportunity to help employees make progress in their careers. They should be intentional and focused.
Don’t just go through the motions – take the time to really think about what you want to accomplish.
Tying performance reviews to compensation
Some companies choose to have performance reviews and salary discussions at the same time. Unfortunately, this can create a lot of tension and stress for employees and managers alike.
Compensation should be based on factors like cost of living, experience, and skills. Instead of tying performance reviews to comp, focus on using them as a tool for employee development. Help your team members identify their strengths and weaknesses so they can focus on improving their skills.
Keeping these meetings separate helps to ensure that each topic is given the attention it deserves.
Tips for giving feedback in a performance review
It’s important to remember that feedback should be constructive. When giving feedback, try to avoid these common mistakes:
- Being vague
- Making assumptions about someone’s understanding
- Criticizing someone’s character or personality
- Focusing on the negatives
- Complimenting someone instead of providing useful feedback
- Giving too much feedback at once
Tip: If you’re a new engineering leader, consider seeking out a mentor who can help you learn how to give feedback effectively and provide guidance on other aspects of your job.
What should I say in a performance review?
The way you deliver feedback is just as important as the feedback itself. Here are some tips for getting the message across effectively:
- Be aware of your tone
- Make sure your comments are specific
- Avoid using absolutes (like “always” and “never”)
- Critique the behavior, not the person
- Use “I” statements (e.g., “I noticed that you didn’t…”)
- Focus on the future (e.g., “In the future, I would like to see you…”)
Tip: Remember to be clear and concise when giving feedback. Back up your comments with specific examples so that the engineer knows what they need to work on. Most importantly, be honest.
Performance reviews are a critical part of a software engineer’s career. When done correctly, they can help employees identify areas for improvement and set goals for the future.
However, there are a few potential pitfalls that can make reviews ineffective. Avoid these traps by approaching reviews with caution and intention. Keep your feedback specific, and don’t be afraid to give criticism – just make sure it’s constructive.
With these tips in mind, you’re ready to start conducting performance reviews that will help your team members grow.
Hiring developers? Start a free trial with Woven today. Woven is the only technical assessment platform that gives individual engineering feedback to every candidate, resulting in a 95% test completion rate.
Top 5 Podcasts for Engineering Managers
Podcasts are great places to find information and advice on how to become a better leader. Check out our top picks for engineering management podcasts this year.
ChatGPT killed the tech interview: We tested 11 methods and here’s what survived
We wanted to collect data on which types of interviews are totally broken by ChatGPT and which ones are safe. Automated code quizzes? Behavioral questions? System design? Here's what happened.