KPI - three letter sticking
Disclaimer: in this article there is a whole block of arguments on how to calculate KPI indicators for programmers and developers, according to numerous requests from readers.
KPIs are discussed at conferences, complex articles in magazines are written about KPIs, employees hate KPIs and dislike bosses. KPI HR professionals consider their medal and work. And almost all of this should not happen with KPI, because it is an ordinary metric, showing the performance of each employee and ensuring the conversion of labor results into certain points, and already points if desired into money. Time passes, problems do not decrease, KPI in the IT field is generally a talk of the town. This time we decided to sort out three important issues of using key indicators in companies. Give me the right carrot! KPI must be correct
1. Probably the most popular way is to read in Excel. This is a handy tool: you can write various indicators in separate sheets and then calculate the aggregated indicator using the formulas on the main sheet.
Advantages: simple, affordable, inexpensive (except for the cost of Excel itself).
Disadvantages: difficulties in collecting and aggregating indicators, you must first collect indicators from employees, then the manager checks the data, collect them in one document, transfer data to the accounting department or top manager. Additional difficulties arise when working with formulas and macros - someone, let him down. Excel KPI is the easiest to fake.
2. Read in a specialized program.There is software that allows you to calculate KPI based on the characteristics of the data and the desired mechanism of calculation. These are quite complex programs that are either fully focused on the calculation of key indicators or contain some other business functionality.
Advantages: powerful feature set, easy data collection, security.
Disadvantages: the first is the high cost of solutions, we simply cannot explain the prices of some vendors. The second is the complexity and congestion of the interface. The third - you need to purchase the next software in your software zoo, and this is an additional cost.
3. Read in CRM system. We have tested, used and refactored the KPI calculation module in RegionSoft CRM for several years.. The result was an advanced tool that implies the possibility of calculating both the simplest indicators and complex composite subsidiaries, including those requiring the use of scripting, thanks to which the complexity of calculating indicators actually becomes unlimited. Thus, together with CRM you get a powerful software for calculating KPI.
Advantages: the first is maximum automation. The second is that you don’t need to enter data manually, you set up rules for calculating indicators and they take data from a CRM system that knows about all transactions and business processes in a business as they fill in the operational process. Everything works online, in a single information system and fully automatically.
Disadvantages: setting up some complex indicators requires programming skills.
Determine the strategic goals of your company - in general and for each department in particular. For example, we have a company RegionSoft Developer Studio and we are developing CRM. Like any developer, we have strategic goals: develop software, update and refactor developed software, sell our software, maintain a pool of users (and there are thousands of them). Accordingly, there should be key indicators (KPI) for salespeople, for technical support staff and for ... and we will leave programmers alone. So, set goals and determine how each unit contributes to them. In this case, the goals can be both financial and targeted, and mixed.
And this is the only performance indicator that grows. Unfortunately, this is my blood pressure.
Select measurable, feasible and achievable KPIs ( we wrote exactly what they should be ). Set the measurement: weights, monetary and quantitative. Specify correction factors and periods for analysis.
For example, you want to set a sales plan for hardware in the amount of 12,000,000 rubles a year by the efforts of three salespeople, while it is your priority that the dowels sell for at least 30% of the amount. We estimate: in a month it is necessary to sell for 1,000,000 rubles, of which 300,000 rubles. dowels We set a plan for the manager - 333,300 rubles. At the same time, for the sale of dowels, we assign a transaction ratio of 0.02 - that is, the manager will receive 2% of the sum of sold dowels, and for the other hardware 0.015 - 1.5%. The result - managers will be motivated to sell more dowels, because for an equal volume of sales from the sale of dowels they will get a big salary. This is KPI.
With seeming simplicity, the calculation of KPI makes it difficult for companies, and responsible managers either simply divide shares between titles, or move away to matrices with an assessment of loyalty to colleagues, mutual assistance and other ways to get the legitimate "-2".
In our new RegionSoft CRM 7.0, we tried to eliminate the human factor and carefully reworked the old KPI mechanism, which we wrote about in Habré . Now you can use the KPI calculation wizard or configure the scorecard manually. How it works?
In RegionSoft CRM KPI can be customized for each employee based on his personal duties and the goals of his unit.
First of all, the analysis of the data in the KPI calculation base is carried out. This can be any information registered in the system:
Any indicator can be composite and include several types of data. Next, you set up planning profiles with a set of indicators for each of the employees, for the departments or for the company as a whole. Plans can be set for the day, week, month, quarter and year.
Here is how it is done:
According to the results of KPI accrual in RegionSoft CRM, you can collect several reports on the achievement of goals in the context of indicators with or without details. By the way, each employee in the CRM interface sees his own personal KPI monitor and can track how fast he is going to fulfill the planned indicators.
Also on the basis of calculating the KPI in our CRM-system, you can calculate the salary:
If you need to configure complex KPIs, then RegionSoft CRM can calculate absolutely everything - it would be a skill. If you need help to set up your KPI system, vendor experts will always come to the rescue and are ready to organize turnkey accounting, and if you want to figure it out for yourself, watch this video:
If the company has a KPI, they most likely do not like it. This is a common situation, despite the fact that these factors have an initially positive goal - to pay an employee a bonus for his work, to evaluate achievements (we remind everyone that KPI can add money to the salary, but cannot deduct money from the salary!). Why it happens?
An important point: employees can look for ways to fake odds or correct them before directly calculating remuneration. All their work will turn into a pursuit of performance indicators. Productivity from this will not grow. Be sure to check employee access rights to the file or KPI counting system, protect cells and sheets when it comes to Excel. Do not hesitate to double-check the data provided, if you do not have enough automation configured. Good advice: try to avoid working with KPI in browser applications, where you can replace links, pass false data and find other workarounds.
People play games and seek to get achievements, some of which turn into in-game currency. They like it and they are excitedly pursuing their goals. In fact, the same KPI. But for some reason, KPIs (carrying real money!) Are not loved, but because of the achivok they do not sleep at night. It seems there is something to think about.
We could not get around this topic. The question that has been raised a dozen times on Habré and other resources related to IT can stump anyone. This is the question of what a KPI software developer should be. There can be no definite answer here: yes, of course, you can evaluate completed tasks, closed bugs, amount of code (by functionality, and not by lines of code, of course), time spent on different projects, but this is somehow ... subjective, whether.
KPI is essentially a motivating tool. For example, for the sale of a product with a higher margin, the company puts the ratio higher, and the salesman seeks to “make” a plan on these products, and the business gets the desired sales volume. What can we motivate a developer? He creates an intellectual product and receives wages (often higher than managers) for closing work tasks. You can’t give him a plan for recursive functions, for loops, or for code quality. Either he did his job or not. Therefore, KPIs for a programmer can only be unrelated to the main work at the level of “helping colleagues, mentoring, participating in meetings and articles on Habré”. But this is insanity, you see, to direct the work and time of a person to a non-working channel so that he earns more.
Once upon a time, a foreign article on how to make KPI for web-programmers came across a long time ago. Here's what was proposed to be assessed: actual working hours versus hours according to the TOR, the number of errors, the availability of documentation (well, these three points have not gone all the way), explanations with the customer, developer enthusiasm, level of requirements, confidence in the successful completion of the project, communication with members commands, the effectiveness of the selected approaches to programming ... All of this was proposed to be evaluated on a scale from 1 to 10. It seems something like this: if, after talking with the customer, the developer kicked the table, hit the keyboard and said “bl ...”, this is 1 or 2, and glad stno poured coffee and expressed enthusiasm - 9 or 10. In short, this is not a story that should be followed.
And also came across a private study, in which 300 developers answered the question, which indicators do they consider to be key:
You, as a developer, what do you consider the most important metric of developer effectiveness?
Here's how the answers were distributed:
The case when you do not need a translation, but you need to wipe your eyes to believe that these points were designated by the developers themselves, and not their team leaders or project managers. The “developer's personality”, with 12.6% and 10.8% of the “lines of code”, is somewhat frightening. But the test coverage and the quality of the code is completely nothing (here, however, the next question arises - what is the quality of the code, how to evaluate it?).
But we know how to evaluate quality, we know :-)
Reaction to results instead of a thousand words:
So, did the “quick and friendly” win? Idiocy.
If, in addition to jokes, you can still dig around and find those metrics that are applicable to KPI in development. (By the way, for those who need it, there is a wonderful discussion on Quora ).
If you have Agile (and to some extent it is now for many, just not all with troubles, unnecessary staff, and the realization that it is Agile), then you can choose indicators such as reducing the time from idea to launch, changing the duration of the development cycle , change in the quality and duration of the sprint, closed tasks and developed features from the backlog. But again, we need integrated indicators, because in August you can pull out 7 tasks from the backlog like “add blue font to the interface”, “make a green fill in the final fields”, and in September it can be 0.5 tasks, but from the category "Add custom calculator functionality." Therefore, targets must be correlated with business goals. For example, in the case of a factor binding to backlog analysis, each type of task is assigned its own weights.
However, each developer is a unique person with his own approaches, speed of work, quality, parallel tasks, etc. And even fragments of one project are not similar one to another. Therefore, to bind a programmer to KPI is still a very bad idea - firstly, if it does not work, it can be seen without indicators, secondly, you can often “get stuck” on something, solve the most important software problem, but remain without a premium thirdly, the assessment is still subjective. Therefore, it is better to choose a permanent premium on the fact “fulfilled in time - fulfilled before the term”, etc. Otherwise, you can get demotivating and harming yourself.
Here we have such a simple conversation about KPI - without complicated formulas that they so like to bring in business magazines. All formulas can be made automatically using the KPI wizard, manual configuration or scripting inRegionSoft CRM (well, or another software). This is all a matter of technology. The main thing is to understand why you need these indicators, how they will work and relate to the goals of the business, and where they will lead you. Do not treat KPI as something extra complex, it is just a plan, a fact and an assessment of the implementation of this very plan. Then the staff will perceive KPI as achivku. Of course, not the one because of which the night does not sleep. But like the one for which it is pleasant to work.
And yes, do not implement KPI where they should not be. There are enough of such areas in IT.
→ Our new flagship RegionSoft CRM 7.0
→ Slowly write a video with an overview of the functionality
→ Our Telegram channel
KPIs are discussed at conferences, complex articles in magazines are written about KPIs, employees hate KPIs and dislike bosses. KPI HR professionals consider their medal and work. And almost all of this should not happen with KPI, because it is an ordinary metric, showing the performance of each employee and ensuring the conversion of labor results into certain points, and already points if desired into money. Time passes, problems do not decrease, KPI in the IT field is generally a talk of the town. This time we decided to sort out three important issues of using key indicators in companies. Give me the right carrot! KPI must be correct
How to approach the calculation of KPI? What is better to consider?
Let's start with the answer to the second question - what is the best way to count?
1. Probably the most popular way is to read in Excel. This is a handy tool: you can write various indicators in separate sheets and then calculate the aggregated indicator using the formulas on the main sheet.
Advantages: simple, affordable, inexpensive (except for the cost of Excel itself).
Disadvantages: difficulties in collecting and aggregating indicators, you must first collect indicators from employees, then the manager checks the data, collect them in one document, transfer data to the accounting department or top manager. Additional difficulties arise when working with formulas and macros - someone, let him down. Excel KPI is the easiest to fake.
2. Read in a specialized program.There is software that allows you to calculate KPI based on the characteristics of the data and the desired mechanism of calculation. These are quite complex programs that are either fully focused on the calculation of key indicators or contain some other business functionality.
Advantages: powerful feature set, easy data collection, security.
Disadvantages: the first is the high cost of solutions, we simply cannot explain the prices of some vendors. The second is the complexity and congestion of the interface. The third - you need to purchase the next software in your software zoo, and this is an additional cost.
3. Read in CRM system. We have tested, used and refactored the KPI calculation module in RegionSoft CRM for several years.. The result was an advanced tool that implies the possibility of calculating both the simplest indicators and complex composite subsidiaries, including those requiring the use of scripting, thanks to which the complexity of calculating indicators actually becomes unlimited. Thus, together with CRM you get a powerful software for calculating KPI.
Advantages: the first is maximum automation. The second is that you don’t need to enter data manually, you set up rules for calculating indicators and they take data from a CRM system that knows about all transactions and business processes in a business as they fill in the operational process. Everything works online, in a single information system and fully automatically.
Disadvantages: setting up some complex indicators requires programming skills.
Now how to count
Determine the strategic goals of your company - in general and for each department in particular. For example, we have a company RegionSoft Developer Studio and we are developing CRM. Like any developer, we have strategic goals: develop software, update and refactor developed software, sell our software, maintain a pool of users (and there are thousands of them). Accordingly, there should be key indicators (KPI) for salespeople, for technical support staff and for ... and we will leave programmers alone. So, set goals and determine how each unit contributes to them. In this case, the goals can be both financial and targeted, and mixed.
And this is the only performance indicator that grows. Unfortunately, this is my blood pressure.
Select measurable, feasible and achievable KPIs ( we wrote exactly what they should be ). Set the measurement: weights, monetary and quantitative. Specify correction factors and periods for analysis.
For example, you want to set a sales plan for hardware in the amount of 12,000,000 rubles a year by the efforts of three salespeople, while it is your priority that the dowels sell for at least 30% of the amount. We estimate: in a month it is necessary to sell for 1,000,000 rubles, of which 300,000 rubles. dowels We set a plan for the manager - 333,300 rubles. At the same time, for the sale of dowels, we assign a transaction ratio of 0.02 - that is, the manager will receive 2% of the sum of sold dowels, and for the other hardware 0.015 - 1.5%. The result - managers will be motivated to sell more dowels, because for an equal volume of sales from the sale of dowels they will get a big salary. This is KPI.
With seeming simplicity, the calculation of KPI makes it difficult for companies, and responsible managers either simply divide shares between titles, or move away to matrices with an assessment of loyalty to colleagues, mutual assistance and other ways to get the legitimate "-2".
In our new RegionSoft CRM 7.0, we tried to eliminate the human factor and carefully reworked the old KPI mechanism, which we wrote about in Habré . Now you can use the KPI calculation wizard or configure the scorecard manually. How it works?
In RegionSoft CRM KPI can be customized for each employee based on his personal duties and the goals of his unit.
First of all, the analysis of the data in the KPI calculation base is carried out. This can be any information registered in the system:
- Targets - incidents (events, results, achievements of any employee)
- Financial indicators - documents (invoices, acts, invoices, orders, payments, etc.)
- Free-form indicators, which are collected using a PascalScript program script.
Any indicator can be composite and include several types of data. Next, you set up planning profiles with a set of indicators for each of the employees, for the departments or for the company as a whole. Plans can be set for the day, week, month, quarter and year.
Here is how it is done:
According to the results of KPI accrual in RegionSoft CRM, you can collect several reports on the achievement of goals in the context of indicators with or without details. By the way, each employee in the CRM interface sees his own personal KPI monitor and can track how fast he is going to fulfill the planned indicators.
Also on the basis of calculating the KPI in our CRM-system, you can calculate the salary:
If you need to configure complex KPIs, then RegionSoft CRM can calculate absolutely everything - it would be a skill. If you need help to set up your KPI system, vendor experts will always come to the rescue and are ready to organize turnkey accounting, and if you want to figure it out for yourself, watch this video:
KPI hate and that is a fact. What to do?
Implementing KPI, you can get a sharp negative. And this is a problem
If the company has a KPI, they most likely do not like it. This is a common situation, despite the fact that these factors have an initially positive goal - to pay an employee a bonus for his work, to evaluate achievements (we remind everyone that KPI can add money to the salary, but cannot deduct money from the salary!). Why it happens?
- Employees could have negative experience at previous workplaces where KPIs acted as an instrument of control and intimidation by a despotic micro-manager (a person who does not work by checking each step of an employee). Often, managers use the KPI system as a tool to build self-loyalty, a way of blackmail and total control. In such conditions, employees not only strive to achieve some sometimes completely ephemeral figures (“following corporate culture”, “interest in the life of the company”), but also behave like schoolgirl honors, who compare grades and mistakes, trying to find out what wrong teacher. Such an approach can be imposed by managers and middle managers, and it comes to the general one last and sometimes only
They worked a bit, wrote a lot of reports - so where are the KPIs that reflect our effectiveness?
In many respects, KPIs in a CRM system (that is, an automated product) are good because they eliminate such situations - you can easily monitor all KPIs for each employee, view the details of charges, open and see how the indicators are calculated. Finally, one or two responsible, competent and at the same time independent people who have access to monitoring the performance of indicators can be set up in a CRM system. - Employees could have negative experience in previous jobs, where KPIs acted as a tool to control employee behavior — namely, behavior. That is, KPIs are aimed not at fulfilling business goals, but at obeying the will of the employee, forcibly introducing him into the corporate culture.
For example, in one company in KPI, in addition to the implementation of the plan, three behavioral factors were taken into account: “total contactability”, “openness to a new one”, “number of appeals to colleagues” (if more than three, this is a bad factor and a reduction factor). An additional problem in the company was that the holder of the KPI process was the HR department, who was friends with marketing and hated sales. As a result, the entire system of indicators, which should be tied to a commercial result, was directed against the main part of commerce. Do not do it this way. - Employees are afraid of measuring their failures. Alas, the KPI system is a mirror of the employee’s work, and without errors, only the one who does nothing is obtained. Of course, it’s very unpleasant to see a zero or lowering coefficient, and here you need to think over the system so that it is encouraging, not punitive. That is, the logic is as follows: “performed a little” - “earned a small premium”, “performed a lot” - “earned a large premium”.
- Employees are afraid not to reach the maximum. Again, the problem is connected with the formulation of the indicators themselves included in the KPI system. Employees should know the conditions for reaching the maximum and clearly understand the reason for the failure in order to change the situation in the next period.
- The manager measures everything that can be measured (does the right thing) and drags it all into the KPI, shifting 100% of the responsibility for the business to the employees (doing wrong). You should not confuse analytics with the KPI system - the first one allows you to go through the instruments, the second one helps to achieve the main business goals. In no case, managers should not drag indicators that are not dependent on the employee’s work in KPIs (for example, put the length of the software product development cycle in a salesman’s KPI).
An important point: employees can look for ways to fake odds or correct them before directly calculating remuneration. All their work will turn into a pursuit of performance indicators. Productivity from this will not grow. Be sure to check employee access rights to the file or KPI counting system, protect cells and sheets when it comes to Excel. Do not hesitate to double-check the data provided, if you do not have enough automation configured. Good advice: try to avoid working with KPI in browser applications, where you can replace links, pass false data and find other workarounds.
How to overcome these barriers?
- To make KPIs measurable, achievable, plans and goals - real and reasonable. This is the key to avoiding most troubles.
- All employees who are motivated with KPI must understand what the scorecard is made of and how it works. Show your KPI calculation scheme to your colleagues, explain why each goal is assigned exactly this weight, additionally consider the details for the month.
- Include high-level indicators with high weight in KPI. So you will get less profanation and poor performance. For example, there may be a goal - to make 300 calls per month, or maybe a goal - to make sales of 270,000. If these are equivalent figures, your employees will simply make 300 or even 350 calls, but they will not sell anything. Therefore, the KPI system should be built in such a way that it could not be possible to “earn” as much as with simple tasks, even with a 200% over-fulfillment of the plan. In this way you will avoid cheating and possible frauds with indicators.
- Visualize KPI - this is important. If an employee has a diagram, chart, percentages, progress bar before his eyes, it is easier for him to perceive the need to achieve the goal. This is a kind of gamification mechanism - you are not so much trying to ring around 100 evil companies, fix 60 minor bugs or complete the development of 9 features in time, but try to bring the progress bar to 100%. It really works, we even wrote this socket - every employee sees it in the main RegionSoft CRM window:
- Make KPI private relations, not public. Do not discuss the results for the period in the presence of other employees, do not compare the work of one employee with another, all claims must be made in private. However, the overall results and the plan / actual figures for the company (divisions) need to be talked about publicly.
People play games and seek to get achievements, some of which turn into in-game currency. They like it and they are excitedly pursuing their goals. In fact, the same KPI. But for some reason, KPIs (carrying real money!) Are not loved, but because of the achivok they do not sleep at night. It seems there is something to think about.
KPI for developers: the truth is somewhere near
We could not get around this topic. The question that has been raised a dozen times on Habré and other resources related to IT can stump anyone. This is the question of what a KPI software developer should be. There can be no definite answer here: yes, of course, you can evaluate completed tasks, closed bugs, amount of code (by functionality, and not by lines of code, of course), time spent on different projects, but this is somehow ... subjective, whether.
KPI is essentially a motivating tool. For example, for the sale of a product with a higher margin, the company puts the ratio higher, and the salesman seeks to “make” a plan on these products, and the business gets the desired sales volume. What can we motivate a developer? He creates an intellectual product and receives wages (often higher than managers) for closing work tasks. You can’t give him a plan for recursive functions, for loops, or for code quality. Either he did his job or not. Therefore, KPIs for a programmer can only be unrelated to the main work at the level of “helping colleagues, mentoring, participating in meetings and articles on Habré”. But this is insanity, you see, to direct the work and time of a person to a non-working channel so that he earns more.
Once upon a time, a foreign article on how to make KPI for web-programmers came across a long time ago. Here's what was proposed to be assessed: actual working hours versus hours according to the TOR, the number of errors, the availability of documentation (well, these three points have not gone all the way), explanations with the customer, developer enthusiasm, level of requirements, confidence in the successful completion of the project, communication with members commands, the effectiveness of the selected approaches to programming ... All of this was proposed to be evaluated on a scale from 1 to 10. It seems something like this: if, after talking with the customer, the developer kicked the table, hit the keyboard and said “bl ...”, this is 1 or 2, and glad stno poured coffee and expressed enthusiasm - 9 or 10. In short, this is not a story that should be followed.
And also came across a private study, in which 300 developers answered the question, which indicators do they consider to be key:
You, as a developer, what do you consider the most important metric of developer effectiveness?
Here's how the answers were distributed:
The case when you do not need a translation, but you need to wipe your eyes to believe that these points were designated by the developers themselves, and not their team leaders or project managers. The “developer's personality”, with 12.6% and 10.8% of the “lines of code”, is somewhat frightening. But the test coverage and the quality of the code is completely nothing (here, however, the next question arises - what is the quality of the code, how to evaluate it?).
But we know how to evaluate quality, we know :-)
Reaction to results instead of a thousand words:
So, did the “quick and friendly” win? Idiocy.
If, in addition to jokes, you can still dig around and find those metrics that are applicable to KPI in development. (By the way, for those who need it, there is a wonderful discussion on Quora ).
If you have Agile (and to some extent it is now for many, just not all with troubles, unnecessary staff, and the realization that it is Agile), then you can choose indicators such as reducing the time from idea to launch, changing the duration of the development cycle , change in the quality and duration of the sprint, closed tasks and developed features from the backlog. But again, we need integrated indicators, because in August you can pull out 7 tasks from the backlog like “add blue font to the interface”, “make a green fill in the final fields”, and in September it can be 0.5 tasks, but from the category "Add custom calculator functionality." Therefore, targets must be correlated with business goals. For example, in the case of a factor binding to backlog analysis, each type of task is assigned its own weights.
However, each developer is a unique person with his own approaches, speed of work, quality, parallel tasks, etc. And even fragments of one project are not similar one to another. Therefore, to bind a programmer to KPI is still a very bad idea - firstly, if it does not work, it can be seen without indicators, secondly, you can often “get stuck” on something, solve the most important software problem, but remain without a premium thirdly, the assessment is still subjective. Therefore, it is better to choose a permanent premium on the fact “fulfilled in time - fulfilled before the term”, etc. Otherwise, you can get demotivating and harming yourself.
Here we have such a simple conversation about KPI - without complicated formulas that they so like to bring in business magazines. All formulas can be made automatically using the KPI wizard, manual configuration or scripting inRegionSoft CRM (well, or another software). This is all a matter of technology. The main thing is to understand why you need these indicators, how they will work and relate to the goals of the business, and where they will lead you. Do not treat KPI as something extra complex, it is just a plan, a fact and an assessment of the implementation of this very plan. Then the staff will perceive KPI as achivku. Of course, not the one because of which the night does not sleep. But like the one for which it is pleasant to work.
And yes, do not implement KPI where they should not be. There are enough of such areas in IT.
→ Our new flagship RegionSoft CRM 7.0
→ Slowly write a video with an overview of the functionality
→ Our Telegram channel
Only registered users can participate in the survey. Sign in , please.