Engineering Rubric
Develop engineering rubric, how to use rubric to get promoted faster, beneficial of rubric for tech leaders.
Hello, this is a premium content for this week. We will be discussing the importance of having clear requirements and qualifications for software engineering positions and leveraging engineering rubrics to address these issues, including how to use it for promotions.
Quick Link:
Clear vs Unclear Requirement for Software Engineering Position
Let's begin by addressing a fundamental question
Q: What qualifies someone for the positions of "Senior Software Engineer" or "Engineering Manager" in a company?
It can vary significantly because different companies have different definitions for each position depending on the needs. In one company, an individual may be considered a senior engineer, while in another, they may still be labeled as a mid-level engineer.
Is it a problem? No! It is okay to be different. The real problem lies in the clarity of the requirements or qualifications for each position. For an employee (software engineer), having clear qualifications for each position can make it easier for you to devise strategies to quickly advance your career and get promoted. As for the company, it can foster transparency and trust that leads to employee satisfaction, which, in turn, contributes to company performance.
On the other hand, having unclear qualifications for each position leads to a multitude of issues. Let's examine some common real-world scenarios that often occur:
You might have encountered individuals who hold senior-level titles within their company solely based on their length of service, rather than their actual capabilities.
An employee feels underappreciated because they believe they already deserve a certain position, but the leaders are unable to convince them that they do not actually deserve it.
There have been cases where candidates appeared well-suited for a position during the interview but failed to deliver satisfactory work once they joined the company, resulting in a gap between expectations and reality.
When this situation happens, it can lead to the best employees decide to leave due to the promotion of the wrong person, which halts company growth, demoralizes the remaining employees, and fosters a toxic work culture.
So, in today's issue, we are going to discuss how to establish clear standards of qualifications by writing engineering rubric. Particularly in the realm of software engineering, it is crucial to establish these standards, at least up to the entry level of an engineering manager or a staff software engineer. Beyond that point, clear expectations may not be as necessary, as individuals are expected to generate impactful results through their own creative approaches. Therefore, our focus should primarily lie on establishing standards for positions below that level.
What and How to Write Engineering Rubric
The software engineering rubric is a structured framework that defines the criteria and expectations for evaluating the skills, competencies, and performance of software engineers within an organization. It outlines the different levels or tiers of engineering positions and provides specific indicators or metrics for each level. The rubric typically includes a set of criteria related to technical proficiency, problem-solving abilities, coding skills, domain knowledge, teamwork, leadership, and other relevant factors.
This is a tool that can be used to define standardization for positions in a company. Let's take a look at the example of an engineering rubric for Software Engineer and Senior Software Engineer in the picture below.
Notes: This rubric is based on my individual thoughts on what a Senior Software Engineer should be, and it may not align with the requirements of your company. However, you can use it as a benchmark if needed.
The rubric should be created by the tech leaders who have the authority to set the desired composition of the tech team. To develop the rubric, it is important to invest time in understanding the actual needs of the company and the desired skills of software engineers. Here are some tips to consider:
Identify the software engineering skills that align with the company's needs. For example, you are an early stage startup company you might need to add delivery as one of important criteria. And if you are digital bank company, you might add security as a criteria.
Test the rubric with existing employees. For instance, if you have defined the rubric for a senior engineer, assess whether the current senior engineers meet the expectations. Based on the results, you can decide whether to use the rubric as is or make adjustments.
It is not necessary to define the rubric for every level initially. I would suggest starting with 1-2 levels, such as the junior software engineer. Once those levels have been established, you can gradually add more levels to the rubric. This allows for a more manageable and step-by-step approach to defining the criteria and expectations for each position.
Tips for Engineers: Utilize Rubric for Getting Promoted
After having the software engineering rubric, the requirements are clear defined. If you are a junior or a software engineer looking to advance your career, you can use this tool to develop your strategy. Here are some tips for utilizing the rubric to accelerate your career:
Have regular 1-on-1 meetings with your managers to discuss your career goals. Ask them for feedback on areas where you can improve based on the rubric and work together to create an action plan.
Focus on demonstrating improvement in the areas identified during your discussions while maintaining excellence in the skills you are already proficient in. Remember to document your success stories as evidence of meeting the requirements.
During performance reviews, showcase your achievements and progress. If you have reached an agreement with your managers on specific goals, they will be motivated to support your promotion.
Keep in mind that promotions are not solely based on individual achievements and capabilities. They can also be influenced by broader business factors such as budgets and organizational considerations. Welcome to the real world! 😉
Remember to stay determined, proactive, and adaptable as you work towards your career goals. Good luck!
Rubric for Tech Leader
With this tool, we can easily use it for the following purposes:
Recruitment: The rubric provides clarity on the type of software engineer you want to recruit. It can help in crafting job vacancy advertisements by outlining the required skills and qualifications. Additionally, it can guide the assessment process during interviews.
Engineering Growth Plan (1:1 Topics): Many engineers aspire to be promoted, but sometimes they invest time in learning areas that may not align with the company's needs. I have encountered this situation before during a one-on-one session. I asked a junior engineer, "What do you want to improve in the next 6 months?" He, being a backend engineer, expressed his interest in learning Kubernetes. I referred to the rubric and explained to him that it is perfectly fine to learn Kubernetes and infrastructure, but if his goal is to get promoted, it may not align with the company's current needs, as the next level position does not require knowledge of infrastructure yet.
Performance Review: An issue that commonly arises is a gap in understanding individual capabilities. Sometimes, engineers overestimate their skills and clash with their performance review. I had an experience where an engineer believed they deserved a promotion to Senior Software Engineer, but in my assessment, they were still far from meeting the criteria. In such situations, I referred to the rubric, reviewed their actions and achievements, and objectively evaluated their progress.
It's important to note that while the rubric is a powerful tool for analyzing someone's capabilities and suitability for the company, it cannot be the sole basis for judgment. We still need subjective evaluation because we are human, not robots. Let's consider a use case:
There is a software engineer who has steadily progressed over the past 3 years, and they have met 80% of the rubric criteria for a promotion to the senior level. He is respected by his peers due to good behavior and hard work. The remaining 20% of the rubric still questionable (not necessarily bad but questionable), relates to the working speed and project planning strategies, which is still not consistent in performance. However, he compensate for his lack of skills by going the extra mile and actively seeking areas for improvement. Now, in the performance review, as a manager, would you promote him or not? Considering his is in the 3rd year and other high-performing engineers typically achieve a senior level within 2 years.
In this scenario, the engineer demonstrates a willingness to address his weaknesses and actively work on improving them. He shown commitment and determination in overcoming their limitations. In such cases, it is essential to consider subjective factors when evaluating performance.
We don’t have Rubric in Our Company, What to do?
If you are a tech leader with decision-making authority, take the time to create this rubric. You can involve trusted employees in the process and develop it together.
If you are in a middle management position, you have the opportunity to influence the tech leaders. Additionally, you have the authority to pilot the rubric within your teams. Once successful, share your success story with the leaders and advocate for its implementation across the company.
If you are a software engineer in a lower position, start by ensuring whether a similar tool exists in your company, even if it may not be well-documented or clear. Begin from there and, if possible, influence the decision-makers. If you're unable to do so, focus on influencing your direct leader to pilot the rubric within your team. Present this article to your leaders if necessary, and offer to help prepare drafts or provide insights. Developing a well-structured rubric may take time, but your assistance in preparing drafts can be valuable.
Thank you for reading today's newsletter! If you find it valuable, don’t forget to: