Our salary increase system has been operating through the Developer Roadmap for about five years. We established three major grades: junior, middle and senior. They were divided into "subgrades", and we made a list of technical and non-technical questions for every level. The rate per hour depended on the level of competency.
For example, if you are a Junior-3 developer, you can earn 450-600 rubles per hour, depending on your experience. When a developer upgrades to the next grade, he gets a minimum rate within the grade range. If a developer works for a while and takes on additional responsibilities, we increase this rate.
If a developer wanted a higher salary, he arranged a meeting with the developers from another grade. Then, he answered their questions from the Developer Roadmap. The result was excellent:
- Employees knew how to get a higher salary. If you want more money, you need to develop.
- The developers who took the "exams" also mentioned the benefits of this process. They prepared and revised the details, which did not apply to their current projects.
When there were 10-15 people in the team, everything worked very well. People actively improved their competencies, and it was significant and profitable for our startup spirit company. Although, we gradually had problems.
The gap between the Roadmap grade and real experience. For example, we often had such a concern when an employee was junior-3 or another one on the Roadmap. However, he had much more experience. So, it was unfair to pay him a junior rate. At the same time, a developer could not apply for a new grade as he did not have enough time to revise for the exam.
So, the leader faces a dilemma. On the one hand, he can increase salaries for those having enough experience. At the same time, it undermines team loyalty. The leader established the general rules, so they should abide by them. If he highlights someone's accomplishments and breaks his own rules, there will be no transparency and respect in the team.
The system considers only technical competencies. A developer is not only a specialist with specific skills. His competencies include teamwork, previous experience, productivity and English proficiency. Finally, we consider even soft skills, even though they are not easy to check. Of course, when we reviewed the grade range, we evaluated not only competencies. However, it was subjectively. We needed a transparent system where people understand what they should do to develop and get a salary increase.
It is impossible to plan the company's budget. The employees decide when they want to upgrade and get a pay raise. It is challenging for the management in terms of financial planning. For example, it is difficult to calculate the client rate for customers, as it may become irrelevant when a developer upgrades.
There is no systematic feedback. Of course, we have introduced tools to understand employee motivation and morale. For example, we have one-on-one meetings that are mainly about personal attitudes. But we work as a team and do business together. It means that we should consider the employee feedback from colleagues and customers in salary increases.
As a result, we decided to revise the existing salary increase system and replace it with a new one. Developing the solution, we got inspired by the Performance review tool. At the same time, we tried to keep transparency and consistency for the whole team.