{"id":59034,"date":"2008-03-04T18:30:11","date_gmt":"2008-03-04T15:30:11","guid":{"rendered":"https:\/\/www.altoros.com\/blog\/?p=59034"},"modified":"2021-06-22T21:27:55","modified_gmt":"2021-06-22T18:27:55","slug":"five-ways-to-measure-your-programmers-performance","status":"publish","type":"post","link":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/","title":{"rendered":"Five Ways to Measure Your Programmers&#8217; Performance"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_79_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Whats_wrong_with_todays_assessment_systems\" >What&#8217;s wrong with today&#8217;s assessment systems?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Definition_of_efficiency_and_performance\" >Definition of efficiency and performance<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Why_is_work_efficiency_measurement_needed\" >Why is work efficiency measurement needed?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Performance_measurement_criteria\" >Performance measurement criteria<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Classification_of_measures\" >Classification of measures<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Numeric_expression_of_measurement_results\" >Numeric expression of measurement results<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Obtaining_and_analyzing_measurement_results\" >Obtaining and analyzing measurement results<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Efficiency_management_and_evolution\" >Efficiency management and evolution<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Efficiency_management_and_personal_compensation\" >Efficiency management and personal compensation<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Overcoming_problems_of_work_efficiency_measurement\" >Overcoming problems of work efficiency measurement<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Development_of_a_performance_management_system\" >Development of a performance management system<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Assessment_of_the_performance_management_system\" >Assessment of the performance management system<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Efficiency_measurement_issues_in_software_development\" >Efficiency measurement issues in software development<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Efficiency_vs_processes\" >Efficiency vs. processes<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Case_study_Our_performance_management_system\" >Case study: Our performance management system<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#ROI_calculation\" >ROI calculation<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Keys_to_success\" >Keys to success<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#Further_reading\" >Further reading<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Whats_wrong_with_todays_assessment_systems\"><\/span>What&#8217;s wrong with today&#8217;s assessment systems?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Information technology is widely known as an innovative sphere. For people who do not work there, it is often associated with the latest models of computers, new types of chips, processors with a number of cores, cutting-edge mobile technologies, and ultra-modern buildings and offices. However, these things are just the tip of the IT iceberg. Insiders know that the work of a modern programmer resembles the activities of medieval artisans.<\/p>\n<p>Today, the manual work of potters, carpenters, and tailors has been automated: machinery works at a rate of thousands of operations per minute. The accuracy and quality of the automated work is much higher than that done manually. Unfortunately, 8-core processors are still incapable of automating the mental activities of today\u2019s programmers. The tools that provide version control, building, designing, and automated testing just decrease the number of mistakes and defects but do not create software by themselves. And, there is no tool that can increase the speed of a programmer\u2019s code writing by 2x or 3x.<\/p>\n<p>We must admit that the industry developing automation systems for all the others failed to come up with a solution that can automate it. There is just one way to significantly increase software development speed: hiring, retaining, and motivating high performers.<\/p>\n<p>Productivity and efficiency are the most critical factors of any company\u2019s success. However, there is no standard recipe for making employees more efficient. Executives who manage small departments are sure that the performance of each of their subordinates is visible. Normally, we measure someone\u2019s work results in accordance with what we see or what we hear from others. For instance, teammates and QA testers are the people who can say a lot about a programmer.<\/p>\n<p>When a company grows and begins to have dozens or hundreds of employees, or when face-to-face communication among team members is limited, the method of personal feedback as a means of employee evaluation becomes unreliable. As a result, the achievements of employees may go unnoticed, which could prevent them from being able to work their way up the career ladder. People with a similar level of expertise and knowledge may also have different earnings. Such issues may cause conflicts, which can result in declining morale and even lead to employees\u2014including valued specialists\u2014leaving the company.<\/p>\n<p>These issues made our management team at Altoros think about devising an effective, consistent method of employee assessment and motivation. Studying the literature and browsing the Internet did not provide us with a system that could be just plugged in to our organization. We had to develop such a system from scratch. After spending hours studying best practices, conducting meetings, and fostering discussions\u2014as well as some trial and error\u2014we have created a system that, in addition to the aforementioned primary purposes, serves as a motivating tool in the self-development of people. Feedback, including from our clients, has been extremely positive. We expect that this study may appeal to a broad range of specialists and managers working in the area of software development.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Definition_of_efficiency_and_performance\"><\/span>Definition of efficiency and performance<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a href=\"https:\/\/www.amazon.com\/Performance-Management-Realities-Developing-Practice\/dp\/0852927274\" rel=\"noopener noreferrer\" target=\"_blank\">Armstrong and Baron (1998)<\/a> define performance management as a strategic and integrated method of achieving the success of an organization by increasing the quality of employees\u2019 work, as well as the capabilities of both working groups and separate employees. Performance management is:<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">Strategic, because it is connected to a broad range of business issues, such as efficient functioning in a business environment, and direction, which should be maintained in order to achieve long-term goals.<\/li>\n<li style=\"margin-bottom: 6px;\">Integrated, because all the elements of an organization, such as departments, teams, and employees, should be managed logically\u2014in order to achieve a common goal.<\/li>\n<li style=\"margin-bottom: 6px;\">Tightly connected with development, which is probably the most important function of performance management. It is impossible to achieve an increase in productivity in an organization without constant improvement of the process.<\/li>\n<\/ul>\n<p>Alternatively, performance management is a concept of molding a single vision of organization goals and tasks, so that each employee understands his\/her personal role in achieving the common results. It also makes it possible to manage and improve the performance of both separate employees and whole organizations.<\/p>\n<p>There are a number of factors that influence work efficiency:<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">Personal factors\u2014the knowledge, competency, motivation, and morale of a person<\/li>\n<li style=\"margin-bottom: 6px;\">Leadership factors\u2014the ability of a group leader to inspire, manage, and support his or her team<\/li>\n<li style=\"margin-bottom: 6px;\">Team factors\u2014the ability of colleagues to provide support to each other<\/li>\n<li style=\"margin-bottom: 6px;\">System factors\u2014the system of work and inventory provided by an organization<\/li>\n<li style=\"margin-bottom: 6px;\">Situational factors\u2014internal and external pressure and changes<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Why_is_work_efficiency_measurement_needed\"><\/span>Why is work efficiency measurement needed?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>There are two well-known expressions that characterize performance measurement:<\/p>\n<ol>\n<li>Those tasks are executed, which are measured.<\/li>\n<li>You cannot manage the process if you do not measure it.<\/li>\n<\/ol>\n<p>In order to improve overall performance, one must first begin by establishing the current level of efficiency. Those whose performance is measured must clearly understand the criteria by which they are being assessed, as well as why the measurement process is important. Oakland (1993) suggests that the appropriate performance measurement does the following:<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">Provides customer satisfaction<\/li>\n<li style=\"margin-bottom: 6px;\">Provides a basis for comparison<\/li>\n<li style=\"margin-bottom: 6px;\">Provides a \u201cscale\u201d to employees, which allows them to monitor their efficiency<\/li>\n<li style=\"margin-bottom: 6px;\">Highlights quality problems and suggests areas that require immediate attention<\/li>\n<li style=\"margin-bottom: 6px;\" >Gives a notion of the costs of low-quality work<\/li>\n<li style=\"margin-bottom: 6px;\">Approves resources usage<\/li>\n<li style=\"margin-bottom: 6px;\">Provides information necessary for further actions that should be taken to increase performance<\/li>\n<\/ol>\n<p>The results of a survey (Armstrong and Baron, 1998) help to understand the outcomes of a performance management system. Managers of 437 widely known US-based companies were interviewed. 205 companies used performance measurement systems; 232 did not. It was pointed out that the 205 companies that used the systems differed from the others in the following ways:<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">They had larger margins, a better cash flow, higher stock exchange ratings, and a higher capitalization.<\/li>\n<li style=\"margin-bottom: 6px;\">They provided a considerable gain in financial activity and performance during the previous three years.<\/li>\n<li style=\"margin-bottom: 6px;\">They had a lower specific increase in the number of employees.<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<h3>\n<h3>Performance measurement criteria<\/h3>\n<p>Armstrong and Baron (1998) point out that the performance measurement must:<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">Be connected with the strategic goals of a company or a team.<\/li>\n<li style=\"margin-bottom: 6px;\">Be attributed to the tasks and responsibilities of employees. Measurement is efficient under the condition that personal responsibility is attached to it.<\/li>\n<li style=\"margin-bottom: 6px;\">Be concentrated on measurable results and achievements.<\/li>\n<li style=\"margin-bottom: 6px;\">Be manageable. It must provide information that expectations were justified to a certain extent.<\/li>\n<li style=\"margin-bottom: 6px;\">Correspond to the goals of measurements and data availability as much as possible.<\/li>\n<li style=\"margin-bottom: 6px;\">Provide reliable feedback for further actions.<\/li>\n<li style=\"margin-bottom: 6px;\">Involve all key aspects of work efficiency.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Classification_of_measures\"><\/span>Classification of measures<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>There are various types of measures, which can be selected in accordance with the criteria described in the previous paragraph. However, the most important characteristics of the units are appropriateness, significance, and precision. Economists suggest that key measures can be targeted at quality, quantity, and profitability.<\/p>\n<p>Metrics can be divided into the following groups:<\/p>\n<ol>\n<li>Financial (income, added value, profitability, and expenses)<\/li>\n<li>Results (products sold or services provided, productivity, and the number of new clients)<\/li>\n<li>Influential (project completion, service level, and innovations)<\/li>\n<li>Reactions (opinions of teammates and clients)<\/li>\n<li>Time-related (response time, expenditures of labor, and delivery time)<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Numeric_expression_of_measurement_results\"><\/span>Numeric expression of measurement results<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The measurement results can be expressed in four ways:<\/p>\n<ol>\n<li>Calculation\u2014quantity of units<\/li>\n<li>Ratio\u2014quantity of the units related to the maximum possible number of them<\/li>\n<li>Percentage\u2014proportion of real achievements versus possible ones<\/li>\n<li>Financial results\u2014gains or losses<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Obtaining_and_analyzing_measurement_results\"><\/span>Obtaining and analyzing measurement results<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>&nbsp;<br \/>\n<b>1. Work efficiency data<\/b><\/p>\n<p>The data can be obtained from the process automation systems. They also allow for comparison between the achieved and expected results, as well as for assessment of alternative ways of acting.<\/p>\n<p>&nbsp;<br \/>\n<b>2. Competency levels<\/b><\/p>\n<p>Competency levels can be measured by analyzing real and reference behavior. If the factors, which distinguish best performance from average or poor performance, are defined, the competency level can be determined relatively easily. Alternatively, rating scales can be used.<\/p>\n<p>&nbsp;<br \/>\n<b>3. Benchmarking<\/b><\/p>\n<p>\u201cBenchmarking\u201d means the efficiency measurement of an organization, a group, or an individual, as compared to the best samples in an industry, a company, or a team.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/andrei-yurkevich-renat-khasanshyn-altoros.jpg\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/andrei-yurkevich-renat-khasanshyn-altoros-1024x576.jpg\" width=\"640\" class=\"aligncenter size-large wp-image-62034\" \/><\/a><\/center><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Efficiency_management_and_evolution\"><\/span>Efficiency management and evolution<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>On the whole, \u201cevolution\u201d is the development of individuals\u2019 personal abilities to work more efficiently. In most cases, organizations evolve through the personal growth of their employees. Service organizations have no other choice apart from this one. Individual learning does not guarantee obtaining knowledge for the organization; however, the organization will obtain no knowledge without individual education. In order to evolve, a company must stimulate its employees to learn; and efficiency management serves as a powerful tool for motivation.<\/p>\n<p>Measurement action may serve as an educational incentive. Before the action, employees may be asked about the knowledge and experience they would like to obtain. They may also be requested to give their opinions about the necessity of this knowledge and experience to the organization. <\/p>\n<p>The action usually consists of, or is accompanied by, an interview. The interview may serve as the groundwork for assessing the results achieved within a definite period, discovering gaps in knowledge or experience, or formulating a plan for the next period.<\/p>\n<p>Efficiency measurement is extremely useful for creating personal development plans for employees. The plans must include the actions that should be undertaken to achieve better performance and raise competency levels.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Efficiency_management_and_personal_compensation\"><\/span>Efficiency management and personal compensation<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Various researchers have shown that differentiated compensation still remains an important component of many efficiency management schemes. The compensation for efficiency and competencies is desirable because:<\/p>\n<ol>\n<li>It motivates people to work harder and develop their skills and competencies.<\/li>\n<li>It spreads a sense of the importance of efficient work.<\/li>\n<li>It compensates people differently and depends on their work efficiency, their competency, and input.<\/li>\n<\/ol>\n<p><a href=\"https:\/\/www.academia.edu\/42856034\/Armstrongs_HAndbook_of_REWARD_MANAGEMENT_PRACTICE_Improving_performance_through_reward_3RD_EDITIoN_michael_Armstrong_i\" rel=\"noopener noreferrer\" target=\"_blank\">Armstrong and Murlis (1994)<\/a> formulated \u201ceight golden rules\u201d of compensation paid to groups and individuals for their efficiency:<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">Both teams and individuals must clearly understand their goals and assessment standards.<\/li>\n<li style=\"margin-bottom: 6px;\">They must be able to track their movement toward the goals throughout the period during which they will be assessed.<\/li>\n<li style=\"margin-bottom: 6px;\">They must be able to affect their work efficiency.<\/li>\n<li style=\"margin-bottom: 6px;\">They must understand what compensation they will get for achieving the results. There should be a direct correlation between the efforts and the rewards.<\/li>\n<li style=\"margin-bottom: 6px;\">The reward must follow the achievement immediately.<\/li>\n<li style=\"margin-bottom: 6px;\">The reward should be noticeable.<\/li>\n<li style=\"margin-bottom: 6px;\">The results necessary for the reward receipt must be achievable, but not too easy.<\/li>\n<li style=\"margin-bottom: 6px;\">The rewarding basis must be positively described and easily understood.<\/li>\n<\/ol>\n<p>A compensation system based on the performance results has the following advantages:<\/p>\n<ol>\n<li>It motivates people to achieve better performance.<\/li>\n<li>It gives correct goals orientation.<\/li>\n<li>It fairly rewards employees for their performance.<\/li>\n<li>It provides efficient methods of rewarding and achievements recognition.<\/li>\n<\/ol>\n<p>However, it also has a number of contingent shortcomings:<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">The motivation factor is not guaranteed. It is often difficult-to-impossible to correspond to the rewarding criteria.<\/li>\n<li style=\"margin-bottom: 6px;\">Compensation must be based on a definite form of efficiency metrics. The most usual form is rating. However, creating realistic metrics may appear to be complicated. As a result, the metrics may appear unfair, subjective, and inconsistent.<\/li>\n<li style=\"margin-bottom: 6px;\">Such a compensatory system may make salaries grow faster than the benefits of the work improvement results.<\/li>\n<li style=\"margin-bottom: 6px;\">The system may depress teamwork due to its individualistic nature.<\/li>\n<li style=\"margin-bottom: 6px;\">Despite having good metrics, the work may appear to be inefficient and of poor quality.<\/li>\n<li style=\"margin-bottom: 6px;\">The system may make short-term goals more appealing to employees than the long-term ones.<\/li>\n<\/ol>\n<p>Many researchers have proven that the best results come from those compensation systems that use a competency level for the definition of a base salary and a short-term performance for the bonus calculation. It is even better if a system takes into account not only individual results, but team performance as well.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Overcoming_problems_of_work_efficiency_measurement\"><\/span>Overcoming problems of work efficiency measurement<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Management of inefficient work is divided into three stages:<\/p>\n<ol>\n<li>Identify the problem<\/li>\n<li>Understand the reasons for its origin<\/li>\n<li>Make an effort to \u201ccure\u201d it<\/li>\n<\/ol>\n<p>Generally, there are two sides that are responsible for work efficiency\u2014organizations and individuals.<\/p>\n<p>Organizations may create the environment and processes that will solve the problems related to performance. In order to achieve it, they can do the following:<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">Create a culture that motivates success. The approach should minimize failures that are the result of passivity. When failures occure, it is important that the organization takes measures that ensure individuals understand what caused the problem, and determine a course of action that can avoid the problem in the future. Elaborate on the performance management processes that set up definite standards for results comparison and shortcomings correction.<\/li>\n<li style=\"margin-bottom: 6px;\">Train managers to handle inefficiency and discipline problems.<\/li>\n<li style=\"margin-bottom: 6px;\">Constantly conduct monitoring of work efficiency and analyze the reasons for failures.<\/li>\n<li style=\"margin-bottom: 6px;\">Stimulate education in the organization.<\/li>\n<\/ol>\n<p>Employees should be responsible for the efficiency of their work themselves. They must also pay considerable attention to self-education. The managers must assist them by providing coaching and consulting and by preparing personal development plans. The main challenge that managers and the whole organization will face after the introduction of an efficiency measurement system is how to appropriately respond to the low performers, once they have been identified by the system. Luthans and Kreitener (1975) defined five steps of behavior modification:<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">Define critical behavior\u2014what individual processes should be modified?<\/li>\n<li style=\"margin-bottom: 6px;\">Measure the frequency of the problem\u2014get clear evidence of the existence of the problem.<\/li>\n<li style=\"margin-bottom: 6px;\">Conduct functional analysis\u2014define what stimuli caused the behavior and\/or what kind of reward or punishment influenced the behavior.<\/li>\n<li style=\"margin-bottom: 6px;\">Develop and integrate a correction strategy\u2014it may include positive or negative consequences on the performer.<\/li>\n<li style=\"margin-bottom: 6px;\">Assess the results of a correction\u2014what improvements happened (or did not happen)? What should be done if the correction does not bring results?<\/li>\n<\/ol>\n<p>Personal performance correction is tightly connected with psychology. Many managers do not like, or are not skilled enough, to criticize their subordinates constructively. <\/p>\n<p>Fletcher and Williams (1992) conclude that the main idea supervisors should convey to employees is one that helps them to modify good performance into better performance, rather than turning bad performance into good performance. They also suggest the following methods of critical discussion:<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">Communicate to the assessed person that his sincere admission of his shortcoming is welcomed.<\/li>\n<li style=\"margin-bottom: 6px;\">Let the assessed person suggest a solution for actions correction.<\/li>\n<li style=\"margin-bottom: 6px;\">Provide support to assessed persons. Bring to their attention aspects that you think are acceptable despite being negatively perceived by themselves.<\/li>\n<li style=\"margin-bottom: 6px;\">Be persistent, if an assessed person does not admit the evidence of a problem. Provide details and examples.<\/li>\n<li style=\"margin-bottom: 6px;\">Address your comments to the weaknesses that can be corrected. Do not attack the personality of an assessed person.<\/li>\n<li style=\"margin-bottom: 6px;\">Do not discuss more than two weaknesses during one meeting. People can only bear a limited amount of criticism.<\/li>\n<\/ol>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/tfs-vsts-reporting-remaining-work-items.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/tfs-vsts-reporting-remaining-work-items.png\" width=\"640\" class=\"aligncenter size-full wp-image-62043\" \/><\/a><small>Remaining work items in TFS\/VSTS reporting<\/small><\/center><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Development_of_a_performance_management_system\"><\/span>Development of a performance management system<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The stages of performance management system development can be generally defined as diagnosis, procedures, design, pilot implementation, and introduction.<\/p>\n<p>&nbsp;<br \/>\n<b>Stage #1. Diagnosis<\/b><\/p>\n<p>The first stage of developing a successful performance management system (Diagnosis), must include the following considerations:<\/p>\n<ol>\n<li>General data about\u2026<\/li>\n<ul>\n<li>\u2026the culture, traditions, and style of management in the organization<\/li>\n<li>\u2026the structure (meaning the extent of delegation and company hierarchy)<\/li>\n<li>\u2026processes and systems<\/li>\n<li>\u2026strategic plans<\/li>\n<li>\u2026decision-makers and stakeholders<\/li>\n<\/ul>\n<li>Weak and strong agreements about\u2026<\/li>\n<ul>\n<li>\u2026the management, measurement, and assessment of work quality<\/li>\n<li>\u2026work compensation<\/li>\n<li>\u2026improvement of work efficiency; development of skills and competencies<\/li>\n<li>\u2026integration of personal and team tasks<\/li>\n<\/ul>\n<li>Analysis\u2026<\/li>\n<ul>\n<li>\u2026of tasks that should be done.<\/li>\n<li>\u2026of reasons why they should be done.<\/li>\n<li>\u2026of the methods for how they should be done.<\/li>\n<\/ul>\n<li>Assessment of\u2026<\/li>\n<ul>\n<li>\u2026expenses.<\/li>\n<li>\u2026returns.<\/li>\n<\/ul>\n<\/ol>\n<p>&nbsp;<br \/>\n<b>Stage #2. Procedures<\/b><\/p>\n<p>The method that is considered to be the best by many researchers of personal performance is to assign a working team, which would consist of managers and employees\u2019 representatives. This method allows for various opinions and feedback and fosters a feeling of belonging.<\/p>\n<p>&nbsp;<br \/>\n<b>Stage #3. Design<\/b><\/p>\n<p>During the design of the performance assessment system, the following aspects should be taken into account:<\/p>\n<ol>\n<li>Process model\u2014agreement about work efficiency.<\/li>\n<li>Usage of tasks and competencies.<\/li>\n<li>The ways in which tasks will be assigned, and which groups and individuals will be able to participate in the formulation of procedures.<\/li>\n<li>Connection with the performance reward system.<\/li>\n<li>Ratings.<\/li>\n<li>Methods of measurement.<\/li>\n<li>Ways in which competencies will be assessed.<\/li>\n<li>The list of necessary documentation and the managers responsible for its handling.<\/li>\n<li>How flexible the efficiency management system will be.<\/li>\n<\/ol>\n<p>&nbsp;<br \/>\n<b>Stage #4. Development and implementation<\/b><\/p>\n<p>The following points should be defined as a part of the development and implementation program:<\/p>\n<ol>\n<li>Who will participate in the program and what the responsibilities of each participant will be.<\/li>\n<li>Timelines of development and implementation.<\/li>\n<li>Employees\u2019 notifications about plan details and a structure of the compensation system.<\/li>\n<li> It is crucial that these are done thoroughly and in a timely manner.<\/li>\n<li>Plan for education.<\/li>\n<li>Pilot schemes.<\/li>\n<li>Success criteria.<\/li>\n<li>Monitoring and assessment of the implementation.<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Assessment_of_the_performance_management_system\"><\/span>Assessment of the performance management system<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>In order to assess the performance management system, attention to the following issues should be paid:<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">Processes correspond to the management culture.<\/li>\n<li style=\"margin-bottom: 6px;\">Top management participates in the process and supports it.<\/li>\n<li style=\"margin-bottom: 6px;\">Linear managers and employees understand the processes, in general, equally well.<\/li>\n<li style=\"margin-bottom: 6px;\">Performance management processes help unite organizational, group, and personal tasks.<\/li>\n<li style=\"margin-bottom: 6px;\">It is obvious that performance management is helpful in getting both short-term results and long-term development.<\/li>\n<li style=\"margin-bottom: 6px;\">Performance management processes are integrated with the other HR processes.<\/li>\n<li style=\"margin-bottom: 6px;\">Performance management processes are flexible and are efficient under special circumstances.<\/li>\n<li style=\"margin-bottom: 6px;\">All stakeholders of the organization participate in designing, developing, and implementing the system. Project team members include top managers, linear managers, team leaders, and individuals.<\/li>\n<li style=\"margin-bottom: 6px;\">Processes are transparent. They function fairly and without bias.<\/li>\n<li style=\"margin-bottom: 6px;\">Managers and team leaders undertake measures that help team members to understand the strategy, goals, and values of the organization.<\/li>\n<li style=\"margin-bottom: 6px;\">Performance management processes place each employee\u2019s individual needs and company goals in line.<\/li>\n<li style=\"margin-bottom: 6px;\">Employees are able to express their opinions about whether the results expected from them are achievable.<\/li>\n<li style=\"margin-bottom: 6px;\">The primary emphasis is put on employees\u2019 development. Financial reward is the second aspect to be considered.<\/li>\n<li style=\"margin-bottom: 6px;\">There are competency models that are developed by all the stakeholders.<\/li>\n<li style=\"margin-bottom: 6px;\">The goals, gains, and efficiency of the system are communicated to employees in detail.<\/li>\n<li style=\"margin-bottom: 6px;\">Managers, team leaders, and employees are trained to work efficiently.<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Efficiency_measurement_issues_in_software_development\"><\/span>Efficiency measurement issues in software development<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>If your software development company is going to introduce a performance measurement system, be prepared to hear a long list of arguments from developers and even managers\u2014a long list of arguments, which are used to justify the impossibility of measuring their performance. Below, there are some examples of arguments.<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">\u201cSoftware developers differ from sales people or factory workers. Their performance cannot be measured by sales volume or by the number of details produced.\u201d Some will go further and declare that, \u201ccreative work cannot be measured at all.\u201d However, each work product creates results, and the results can be measured. There are a number of metrics suggested in paragraph 16, which can be used for assessing the performance of programmers.<\/li>\n<li style=\"margin-bottom: 6px;\">\u201cThe more the emphasis is put on measuring major metrics, the more likely it is that the small unmeasured elements will be sacrificed.\u201d However, it is impossible to achieve great performance in everything. The system of metrics defines a common set of values for all: clients, company, and individual developers.<\/li>\n<li style=\"margin-bottom: 6px;\">\u201cThe quality of work suffers as employees become focused on achieving a grade rather than satisfying clients.\u201d However, customer satisfaction may be used as one of the metrics.<\/li>\n<li style=\"margin-bottom: 6px;\">\u201cMeasurement cannot be performed because it cannot take into account the factors that are beyond control.\u201d However, measurement just points out the changes in work efficiency, it does not explain them.<\/li>\n<li style=\"margin-bottom: 6px;\">\u201cMeasurement is possible only in a case where the result is measurable.\u201d However, whenever people are expected to perform some work, the extent of the work completion can be assessed.<\/li>\n<\/ol>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/tfs-vsts-report-viewer-bug-rates.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/tfs-vsts-report-viewer-bug-rates.png\" width=\"640\" class=\"aligncenter size-full wp-image-62046\" \/><\/a><small>Displaying the amount of bugs in TFS\/VSTS report viewer<\/small><\/center><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Efficiency_vs_processes\"><\/span>Efficiency vs. processes<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>As we may see, nowadays many software development companies invest heavily in processes reengineering and various automation systems. The same goals as in paragraph four apply. Companies tend to:<\/p>\n<ol>\n<li>Improve customer satisfaction<\/li>\n<li>Decrease the specific number of employees<\/li>\n<li>Get larger margins<\/li>\n<\/ol>\n<p>However, polishing processes cannot take the place of having skilled employees and taking care of programmers\u2019 evolutions. Process management tools cannot automate the creative work of software developers. Nevertheless, automation systems are extremely important and can be helpful in the performance measurement process by providing the necessary numeric data.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Case_study_Our_performance_management_system\"><\/span>Case study: Our performance management system<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>&nbsp;<br \/>\n<b>Competency metrics<\/b><\/p>\n<p>The expertise of a person, which he or she presents at an interview and on his\/her resume, includes those factors that determine whether he\/she will get a position in a particular company. These factors will also influence the initial compensation of the person. Unfortunately, when making hiring decisions, we often have to rely on the subjective opinion of an interviewer, which can never be an exact measure of a person\u2019s actual ability to fulfill the requirements of a position. Just as it is impossible for an interviewer to fully evaluate a potential employee, it is also impossible to use a subjective opinion to compare developers, especially if they work in different departments. How can the manager fairly determine the distribution of roles and responsibilities on the project? How can he or she know for certain who is knowledgeable enough to develop a flexible and scalable architecture, or who reads books after work in order to improve his or her knowledge?<\/p>\n<p>A third-party theoretical exam can serve as a fair validation of the theoretical knowledge of a software developer. Certificates from Sun and Microsoft, and online exams at brainbench.com or whizlabs.com, will give you information about the capabilities of developers.<\/p>\n<p>Experience also matters. It is not enough just to read a book and answer the examination questions correctly. There is a lot of information that can be obtained only from practice. Altoros uses a competency scale, which converts years of experience into points used for assessment.<\/p>\n<p>&nbsp;<br \/>\n<b>Performance metrics<\/b><\/p>\n<p>We sometimes face a situation in which a person who is extremely knowledgeable is not productive on projects. There are a lot of possible reasons for a lack of performance, such as fatigability, indiscipline, instability, etc. The next group of metrics displays how a programmer applies the knowledge he or she has.<\/p>\n<p>&nbsp;<br \/>\n<i>1. Estimations divergence<\/i><\/p>\n<p>The most obvious criterion that directly influences the efficiency of a developer is his or her productivity. But, it is not easy to answer such simple questions as, \u201cHow quick is he? How much work did he do?\u201d As it was outlined above, it is incorrect to assess the productivity of a developer by the number of code strings or by bytes of source code written within a time unit. However, it is quite possible to make estimations based on the tasks that are assigned to a developer, and then to calculate how often the actual time spent corresponds to the time planned. In order to make this metric work, both a manager and a developer must agree that the task can be completed within the estimated time period. Statistical data can give answers to the questions below.<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">How often does the developer miss deadlines?<\/li>\n<li style=\"margin-bottom: 6px;\">What is the average accuracy of the developer\u2019s original estimations vs. the actual time it took to perform a task or complete a project?<\/li>\n<li style=\"margin-bottom: 6px;\">What is the monthly difference between the estimated time and the time actually spent on carrying out tasks?<\/li>\n<\/ul>\n<p>&nbsp;<br \/>\n<i>2. Distribution of bugs by priority and severity<\/i><\/p>\n<p>Every company is interested in having high-quality products. Thousands of software development firms have failed trying to promote buggy applications. The users who installed such products spread their negative feedback throughout the Internet, destroying the reputation of the software vendor.<\/p>\n<p>It is possible to discover the bugs with the help of thorough testing, and then to fix them. However, there is another characteristic of bugs\u2014they cost investors money (Newman, 2002). The higher the severity, the higher the cost. <\/p>\n<p>So, productive developers are those who work without major defects. \u201cIt is impossible,\u201d one can say, and we agree with this statement. There are no programmers who work without mistakes. We also could amend it with another saying, \u201cThose people do not make mistakes who do nothing.\u201d However, it is quite possible to compare the bug rates of various developers and understand who is more productive. <\/p>\n<p>We, at Altoros, after analyzing statistical data, use a metric, which is measurable and can be applied as an indicator of a programmer\u2019s quality. The metric is the percentage of bugs of a definite severity or priority in the overall number of bugs produced by the developer.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/distribution-of-developer-bugs-by-severity-2.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/distribution-of-developer-bugs-by-severity-2.png\" alt=\"\" width=\"640\" class=\"alignnone size-full wp-image-62205\" \/><\/a><small>Distribution of bugs by severity<\/small><\/center><\/p>\n<p>In the picture above, the most severe bugs are shown in blue. You can see that every developer has a different number of bugs and a different percentage of bugs by severity. James and Nic have a minimal number of bugs. The quantity of defects produced by Shawn is the highest within the group. The difference in the absolute number of defects can be explained by the disparity of periods during which each developer participated in the project, as well as by the nature of work that is performed by a programmer. The absolute number of bugs cannot be compared and used as an assessment criterion. However, we can juxtapose the percentage of the highest severity bugs.<\/p>\n<p><small><\/p>\n<table cellspacing=\"1\" cellpadding=\"0\" border=\"1\" style=\"width:100%\">\n\t<body><\/p>\n<tr style=\"background-color:#898f98;color:white;\">\n<td valign=\"top\" rowspan=\"2\" style=\"vertical-align: middle\"><center><b>Employee<\/b><\/center><\/td>\n<td valign=\"top\" colspan=\"5\" style=\"vertical-align: middle; padding: 5px;\"><center><b>Bugs by severity<\/b><\/center><\/td>\n<td valign=\"top\" rowspan=\"2\" style=\"vertical-align: middle\"><center><b>Total<\/b><\/center><\/td>\n<td valign=\"top\" rowspan=\"2\" style=\"vertical-align: middle\"><center><b>Share of critical<\/b><\/center><\/td>\n<\/tr>\n<tr style=\"background-color:#898f98;color:white;\">\n<td valign=\"top\" style=\"vertical-align: bottom;padding: 5px;\"><center><b>1. Critical<\/b><\/center><\/td>\n<td valign=\"top\" style=\"vertical-align: bottom;padding: 5px;\"><center><b>2. High<\/b><\/center><\/td>\n<td valign=\"top\" style=\"vertical-align: bottom;padding: 5px;\"><center><b>3. Medium<\/b><\/center><\/td>\n<td valign=\"top\" style=\"vertical-align: bottom;padding: 5px;\"><center><b>4. Low<\/b><\/center><\/td>\n<td valign=\"top\" style=\"vertical-align: bottom;padding: 5px;\"><center><b>5. Exception<\/b><\/center><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" style=\"padding-left: 10px;\">Nick<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">8<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">17<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">11<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">7<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\"><\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">43<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">19%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" style=\"padding-left: 10px;\">Roderic<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">15<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">18<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">12<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">7<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">1<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">53<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">28%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" style=\"padding-left: 10px;\">Shawn<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">13<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">26<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">9<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">11<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">1<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">60<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">22%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" style=\"padding-left: 10px;\">James<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">23<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">19<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">7<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">1<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\"><\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">50<\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\">46%<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" style=\"padding-left: 10px;\"><b>Total<\/b><\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\"><b>59<\/b><\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\"><b>80<\/b><\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\"><b>39<\/b><\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\"><b>26<\/b><\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\"><b>2<\/b><\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\"><b>206<\/b><\/td>\n<td valign=\"top\" style=\"text-align: right;padding-right: 10px;\"><b>29%<\/b><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><\/small><\/p>\n<p>The table above suggests that Nic and Shawn are the most efficient team members because they have the lowest percentage of critical bugs. Also, when evaluating a developer\u2019s performance, it is essential to consider the stage of project development. At an early stage, when the basics of a project structure are being formed, low-priority defects are unlikely to be reported. At a later stage, when the project is quite stable, programmers pay more attention to the user interface. It causes a rise in the quantity of low-priority defects. So, while assessing programmers in accordance with the relevant percentage of bugs\u2019 priority (severity), the stage of the project should be taken into account.<\/p>\n<p>&nbsp;<br \/>\n<i>3. The number of regressive bugs. Distribution of regressive bugs by priority and severity.<\/i><\/p>\n<p>Imagine a situation in which a team is going to release a product. There are just a few bugs left. Most of them are not critical. The manager is quite optimistic about meeting the deadline. The new build is released; QA team members report that all of the previously known bugs have been fixed. However, there are some new bugs, their number has grown up in comparison with the previous build, and to make matters worse, the number of critical bugs has increased dramatically. The release of the next build brings similar results. It becomes a nightmare for the manager, and the deadline is not met. Have you ever had a similar experience? Unfortunately, there is a class of developers who always seem to produce two critical bugs while fixing a slight glitch. A manager must know about the abilities of his team members to fix defects carefully. <\/p>\n<p>The approach described in the previous paragraph can only be used for regressive bugs. They are especially costly because more time is required to fix them. The increased effort to resolve the regressive bug is caused by the need to analyze the code written some time ago. The higher cost of the regressive bugs deserves the special attention of the programmers. The ability to produce fewer such defects definitely makes a significant contribution to the efficiency of a software product\u2019s development.<\/p>\n<p>&nbsp;<br \/>\n<i>4. The number of unsuccessful check-ins<\/i><\/p>\n<p>The analysis of the statistical data suggested one more interesting metrics to us. It appears that experienced developers spend less time on build compilation. It often happens that after a check-in, a build fails to be compiled on a server while everything was okay on a developer\u2019s workstation. The developer spends some time in order to find the reason for this issue and often distracts other team members with requests for assistance. The common cause of such a problem is an old version of source code, which a developer has on his workstation. In order to avoid such cases, the developer should check-out the recent version of the source code before merging his changes with it. The metric shows how disciplined the developer is and allows to save troubleshooting time.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/build-result-after-check-in-2.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/build-result-after-check-in-2.png\" alt=\"\" width=\"640\" class=\"alignnone size-full wp-image-62207\" \/><\/a><small>The number of completed builds vs. failed builds<\/small><\/center><\/p>\n<p>&nbsp;<br \/>\n<i>5. Compliance with coding standards<\/i><\/p>\n<p>Everybody knows how important it is to name procedures and variables correctly; how beneficial object-oriented programming is; how difficult it is to understand the code of a workmate if it does not contain any comments (Source Code Comments). However, programmers often \u201cforget\u201d about the obvious rules of coding, in order to reach short-term goals. The automated system of code check allows not only blocking the attempt to commit the code, which does not comply with a standard but also records such events and then provides the data for assessing the programmers.<\/p>\n<p>Commenting on the code afterwards has proved to be more time-consuming compared with commenting on it immediately upon completion.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/Number-of-builds-in-compliance-with-the-coding-standard-2.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/Number-of-builds-in-compliance-with-the-coding-standard-2.png\" alt=\"\" width=\"640\" class=\"alignnone size-full wp-image-62206\" \/><\/a><small>The number of builds in compliance with the coding standard<\/small><\/center>\n<\/ul>\n<p>&nbsp;<br \/>\n<b>Personal qualities<\/b><\/p>\n<p>Despite being objective and obvious, the metrics described above still do not cover all the aspects of personal performance. This means that the assessment system can be \u201cdeceived.\u201d A developer can pay attention just to the aspects of work, which are measured, and not care about anything else. However, there are two groups of people who can hardly be deceived\u2014clients and teammates.<\/p>\n<p>When we designed the assessment system, we never forgot the primary purpose of any service organization\u2014customer satisfaction. And getting the numeric value of this metric is quite simple. Just a few simple questions have to be asked. Setting up a compensation premium proportionate to the level of satisfaction gives very efficient feedback to the project team about the performance and makes everyone think about his or her ability to improve the team results. If quantitative metrics look good and the client is not satisfied, then only the programmers themselves may reveal the hidden problems. <\/p>\n<p>The assessment of team members in accordance with the method of 360 degrees (Edwards and Ewen, 1996), when every person who did some work on the project assesses the others, gives fair information about the real performance of every project participant. We have selected ten personal qualities that we think affect the overall performance most of all:<\/p>\n<ol>\n<li>Discipline<\/li>\n<li>Time management<\/li>\n<li>Ability to understand and convey ideas<\/li>\n<li>Desire to acquire new knowledge<\/li>\n<li>Speed of work<\/li>\n<li>Assistance to other team members<\/li>\n<li>Leadership<\/li>\n<li>Quality of work<\/li>\n<li>Positive thinking<\/li>\n<li>Independence in work<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"ROI_calculation\"><\/span>ROI calculation<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Like many innovations, setting up a performance management system is often a lengthy and expensive initiative. And a decision whether to invest in it or not, should not be made blindly. The benefits of the systems were described in detail in paragraph 4. Their financial impact will be different for various organizations. Below, is an approximate list of tools, processes, and activities, which should be considered as \u201cexpenses.\u201d<\/p>\n<ol>\n<li style=\"margin-bottom: 6px;\">Automation tools, which would allow measuring the quantity of bugs, check-ins, policy violations, etc.<\/li>\n<li style=\"margin-bottom: 6px;\">Time of employees who participate in performance system design, development, and implementation.<\/li>\n<li style=\"margin-bottom: 6px;\">Time for competency scales creation.<\/li>\n<li style=\"margin-bottom: 6px;\">Time for interviewing the employees. (The time of both the interviewer and the interviewee should be taken into account.)<\/li>\n<li style=\"margin-bottom: 6px;\">Time for creation of personal development plans.<\/li>\n<li style=\"margin-bottom: 6px;\">Trainings and seminars.<\/li>\n<li style=\"margin-bottom: 6px;\">System evaluation and correction.<\/li>\n<li style=\"margin-bottom: 6px;\">Examination fees.<\/li>\n<li style=\"margin-bottom: 6px;\">Time for examination.<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Keys_to_success\"><\/span>Keys to success<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Armstrong and Baron (1998) are cited in the conclusion. They consider the following factors to be the keys to successful implementation and application of performance management systems:<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">Clear understanding of \u201cperformance management\u201d<\/li>\n<li style=\"margin-bottom: 6px;\">Understanding of the company\u2019s values and its desire to establish a \u201cperformance management culture\u201d<\/li>\n<li style=\"margin-bottom: 6px;\">Laser focus on the individual benefits to employees and their role in the process<\/li>\n<\/ul>\n<p>Like many innovations, setting up a performance management system is often a lengthy and expensive initiative. However, clear understanding of company\u2019s values and its desire to establish a \u201cperformance management culture\u201d can help to succeed in implementation of the system.<\/p>\n<p>Coupled with our time tracking tool <a href=\"https:\/\/www.teamexpand.com\/\" rel=\"noopener noreferrer\" target=\"_blank\">TX Chrono<\/a>, the guidelines described in this study will help you to organize a time-efficient programming process. In brief, TX Chrono is a timesheet tracking application for software development organizations standardizing on Visual Studio .NET. A web-based timetable enables project managers and team members to submit, approve, and analyze timesheets, featuring a set of notification and reporting capabilities.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/teamexpand-time-tracking-software-confirming-a-timesheet.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/teamexpand-time-tracking-software-confirming-a-timesheet.png\" width=\"640\" class=\"aligncenter size-full wp-image-62030\" \/><\/a><small>Time tracking with a TFS-based timesheet<\/p>\n<p><\/small><\/center><\/p>\n<p>With the performance management system described in this handbook, organizations can turn their employee review process into a powerful toolset for improving both tactical performance and strategic business results. Though neither can process management tools substitute for skilled employees, nor automate their creative work, they can provide unbiased insights based on measurable data, helping to organize efficient processes.<\/p>\n<p>Let us know if you want to learn more about our performance management system or other tools that  can make software development more visible and predictable.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Further_reading\"><\/span>Further reading<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/7-steps-to-integrate-microsoft-vsts-into-sdlc\/\">7 Steps to Integrate Microsoft VSTS into SDLC<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>What&#8217;s wrong with today&#8217;s assessment systems?<\/p>\n<p>Information technology is widely known as an innovative sphere. For people who do not work there, it is often associated with the latest models of computers, new types of chips, processors with a number of cores, cutting-edge mobile technologies, and ultra-modern buildings and offices. However, [&#8230;]<\/p>\n","protected":false},"author":51,"featured_media":62208,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[7],"tags":[895],"class_list":["post-59034","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news-and-opinion","tag-research-and-development"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Five Ways to Measure Your Programmers&#039; Performance | Altoros<\/title>\n<meta name=\"description\" content=\"This research explains how to unbiasedly measure the performance of in-house or remote development teams to increase overall productivity by 20%\u201340%.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Five Ways to Measure Your Programmers&#039; Performance | Altoros\" \/>\n<meta property=\"og:description\" content=\"What&#8217;s wrong with today&#8217;s assessment systems? Information technology is widely known as an innovative sphere. For people who do not work there, it is often associated with the latest models of computers, new types of chips, processors with a number of cores, cutting-edge mobile technologies, and ultra-modern buildings and offices. However, [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/\" \/>\n<meta property=\"og:site_name\" content=\"Altoros\" \/>\n<meta property=\"article:published_time\" content=\"2008-03-04T15:30:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-06-22T18:27:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/ways-to-measure-your-programmers-performance.gif\" \/>\n\t<meta property=\"og:image:width\" content=\"822\" \/>\n\t<meta property=\"og:image:height\" content=\"480\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/gif\" \/>\n<meta name=\"author\" content=\"Andrei Yurkevich\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andrei Yurkevich\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"28 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/\",\"name\":\"Five Ways to Measure Your Programmers' Performance | Altoros\",\"isPartOf\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/ways-to-measure-your-programmers-performance.gif\",\"datePublished\":\"2008-03-04T15:30:11+00:00\",\"dateModified\":\"2021-06-22T18:27:55+00:00\",\"author\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/d13de5437a8bf0477d4222afde2a232a\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#primaryimage\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/ways-to-measure-your-programmers-performance.gif\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/ways-to-measure-your-programmers-performance.gif\",\"width\":822,\"height\":480},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.altoros.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Five Ways to Measure Your Programmers&#8217; Performance\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\",\"url\":\"https:\/\/www.altoros.com\/blog\/\",\"name\":\"Altoros\",\"description\":\"Insight\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.altoros.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/d13de5437a8bf0477d4222afde2a232a\",\"name\":\"Andrei Yurkevich\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/Andrei-Yurkevich-150x150.png\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/Andrei-Yurkevich-150x150.png\",\"caption\":\"Andrei Yurkevich\"},\"description\":\"With 10+ years in the software development industry, Andrei Yurkevich serves as President and Chief Technology Officer at Altoros. Under his supervision, the engineering team has grown from zero to 350+ specialists across eight global locations. Currently, he is responsible for technology alliances in big data and PaaS. Andrei has successfully implemented strategies for software product development, marketing, motivation systems, personnel performance management, and team building.\",\"url\":\"https:\/\/www.altoros.com\/blog\/author\/andrei-yurkevich\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Five Ways to Measure Your Programmers' Performance | Altoros","description":"This research explains how to unbiasedly measure the performance of in-house or remote development teams to increase overall productivity by 20%\u201340%.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/","og_locale":"en_US","og_type":"article","og_title":"Five Ways to Measure Your Programmers' Performance | Altoros","og_description":"What&#8217;s wrong with today&#8217;s assessment systems? Information technology is widely known as an innovative sphere. For people who do not work there, it is often associated with the latest models of computers, new types of chips, processors with a number of cores, cutting-edge mobile technologies, and ultra-modern buildings and offices. However, [...]","og_url":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/","og_site_name":"Altoros","article_published_time":"2008-03-04T15:30:11+00:00","article_modified_time":"2021-06-22T18:27:55+00:00","og_image":[{"width":822,"height":480,"url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/ways-to-measure-your-programmers-performance.gif","type":"image\/gif"}],"author":"Andrei Yurkevich","twitter_misc":{"Written by":"Andrei Yurkevich","Est. reading time":"28 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/","url":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/","name":"Five Ways to Measure Your Programmers' Performance | Altoros","isPartOf":{"@id":"https:\/\/www.altoros.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#primaryimage"},"image":{"@id":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#primaryimage"},"thumbnailUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/ways-to-measure-your-programmers-performance.gif","datePublished":"2008-03-04T15:30:11+00:00","dateModified":"2021-06-22T18:27:55+00:00","author":{"@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/d13de5437a8bf0477d4222afde2a232a"},"breadcrumb":{"@id":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#primaryimage","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/ways-to-measure-your-programmers-performance.gif","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2008\/03\/ways-to-measure-your-programmers-performance.gif","width":822,"height":480},{"@type":"BreadcrumbList","@id":"https:\/\/www.altoros.com\/blog\/five-ways-to-measure-your-programmers-performance\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.altoros.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Five Ways to Measure Your Programmers&#8217; Performance"}]},{"@type":"WebSite","@id":"https:\/\/www.altoros.com\/blog\/#website","url":"https:\/\/www.altoros.com\/blog\/","name":"Altoros","description":"Insight","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.altoros.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/d13de5437a8bf0477d4222afde2a232a","name":"Andrei Yurkevich","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/Andrei-Yurkevich-150x150.png","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/05\/Andrei-Yurkevich-150x150.png","caption":"Andrei Yurkevich"},"description":"With 10+ years in the software development industry, Andrei Yurkevich serves as President and Chief Technology Officer at Altoros. Under his supervision, the engineering team has grown from zero to 350+ specialists across eight global locations. Currently, he is responsible for technology alliances in big data and PaaS. Andrei has successfully implemented strategies for software product development, marketing, motivation systems, personnel performance management, and team building.","url":"https:\/\/www.altoros.com\/blog\/author\/andrei-yurkevich\/"}]}},"_links":{"self":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/59034","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/users\/51"}],"replies":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/comments?post=59034"}],"version-history":[{"count":62,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/59034\/revisions"}],"predecessor-version":[{"id":59072,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/59034\/revisions\/59072"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media\/62208"}],"wp:attachment":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media?parent=59034"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/categories?post=59034"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/tags?post=59034"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}