6 Ways Static Object Can Improve Your Developer Performance Reviews
As an Engineering Manager, you need to know what your developers are working on. But where to start?
It's hard to remember what a developer was working on last week, let alone 9 months ago. It takes time to leaf through old commits and find specific project details. The prospects are worse still if you hope to correlate past commits to the issue tracker tickets they closed (i.e., to remember the biggest Jiras the developer completed over past year). And it can be difficult to determine the developer’s strengths, or measure how much they’ve improved in a specific area.
Static Object’s Performance Review feature shines light into these questions and others. This article will take a quick tour through some of the insights the Performance Review page provides.
1. How is this developer performing overall?
In the past, there hasn’t been an easy way to quantify all the complexities of a developer’s performance. For example, no one would base a review solely on how many new lines of code a developer has written. Refactoring or removing code can be just as valuable.
That’s why we created Line Impact, an intelligent, multifaceted metric that Static Object uses to measure developer performance. If you’re new to Static Object, learn more about how Line Impact works and why we focus on a single, reliable metric for measuring developers.
The Line Impact Over Time tool at the top of the Performance Review page gives you an idea of how productive a developer is overall. This graph represents 3 code analysis metrics:
- Line Impact: A relative measure of commit value based on the changes made to the code.
- Days Active: Number of days a developer committed code.
- Velocity: Average Line Impact per day.
Users can select the date range for the performance review (“Last year”, “All time”, etc.). The graph then compares the current stats to the developer’s all-time average.
2. How does this developer compare to others on the team?
Coding is not a competition, but there is value in comparing developers’ performances in specific categories to one another. An example from our own team: we were able to identify one of our developers as a consistent top performer in view and style code (HTML, HAML, CSS). Now that we know they have a knack for writing front-end code, we can match them up with this type of work in the future. It’s a win–win for the quality of our code and developer productivity.
Enter the Category Comparison and Team Comparison tools. The idea behind Category Comparison is that you first define categories for your code. For example, you could make categories for documentation, tests, models, views and controllers. Then, Static Object compares developers’ performance in those categories.
The Team Comparison tool offers a snapshot view of the developer’s Line Impact compared to their peers’. You can also filter Team Comparison by Code Category, helping you visualize how a developer compares to others in a specific category.
These comparisons can be a game changer for managers when it comes time to match developers with the projects they are best suited for.
3. What were this developer’s biggest projects this year?
It’s easy enough to recall that large project that a developer worked on last month, but how about last spring? What were they working on then, and what exactly did those projects entail? Before you spend an hour searching through old Jiras to find out, try the Top Projects tool.
The Top Projects tool shows the projects with the largest Line Impact that the developer worked on each month. You can also connect Static Object to Jira or another issue mapping software, so you can easily see how commits relate to tasks your team is working on.
With Top Projects, our managers went from spending hours finding and reviewing the many projects a developer worked on, to spending a few minutes looking at their top projects consolidated on one page.
4. What other skills does this developer contribute to the team?
Code metrics don't always tell the whole story. Perhaps someone on your team is taking time to mentor junior developers, or putting the extra effort into automating a repetitive task. These are important things to note in performance reviews as well.
With this in mind, we created Badges. Who doesn’t like collecting awards?
Badges are a great way to give recognition for the exemplary and varied work done by your team. There are two types: auto-assigned and admin-assigned.
Auto-assigned badges are awarded by Static Object when the developer meets a certain criteria. Some examples:
- Parachute: Directed at least 10% of a month's code toward writing tests
- Linguist: Contributed in more than 5 languages over the month
- Honor Roll: Held the top spot on the leaderboard over 5 straight business days
Managers can also award badges to developers as a way of recognizing achievements, or for going above and beyond the call of duty. Some examples:
- Sage: Mentored a junior dev in a meaningful way
- Timesaver: Automated or toolified a repetitive task
- Swan: Refactored code that used to be ugly
Badges help developers feel recognized, and they give managers an easy way to track extra efforts and milestones throughout the year.
5. How can I gather feedback about this person?
Qualitative feedback from a developer’s teammates is an important complement to quantitative data. However, it’s easy to lose track of information like that months down the road. It also costs you valuable time to ask everyone on your team what they think about a developer’s performance.
Fear not: the Notes tool on the Performance Review page makes it easy for managers to leave feedback about a developer anytime. Perhaps a manager was impressed by the way a developer solved an issue, or there was a specific time the developer stepped up to the plate, and their project manager wants to remember it. You can view all this important feedback in one place, making your next performance review that much easier and helping you remember all the awesome things your team has accomplished.
In case you were wondering, you can choose to hide or share notes with the developer.
6. How can I be sure these measurements are accurate?
All this data would be useless if it wasn’t transparent, accurate, and consistent with your business’s values. Everyone on your team benefits from knowing what's being measured, how, and why.
That’s why we’ve engineered Line Impact to be fully transparent and customizable for your business’s needs. You can fine tune how Static Object calculates your Line Impact scores anytime. Additionally, Static Object displays 5 of the developer's highest scoring commits on their Performance Review page. You can review those commits for accuracy and if necessary, adjust the Line Impact scores to be closer to what you’d expect.
Bonus: Not Just for Managers
We’d be remiss if we didn’t mention that the Performance Review page provides great personal value for developers, as well. Developers can view their own Performance Review page, helping them track their progress over time. They can use this page to determine their strengths and weaknesses, gather accomplishments to mention in their next review, and make a compelling case for future projects they’d like to be included on. Static Object’s Performance Review feature empowers your whole team – not just managers.
A Page with Lasting Impact
The Performance Review page is one of the most valuable features of Static Object. It saves managers the time and effort of sorting through months of a developer’s past work to get an idea of what they have accomplished, and helps you review older projects with the same clarity as recent ones. Managers can use the Code Category comparison to match developers up with the tasks that they are best at, boosting the quality of your product as well as developer productivity.