SlideShare a Scribd company logo
1 of 22
Download to read offline
Productivity and efficiency are the most critical factors of any company’s 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’s 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.

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 can even lead to
employees—including valued specialists—leaving the company.

These issues made our management team at Altoros Systems 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 a system from scratch. After spending
hours studying best practices, conducting meetings, and fostering discussions—as well as some trial and error—we
have created a system, which, in addition to the aforementioned primary purposes, serves as a motivating tool in the
self-development of people. Feedback, including from our valued clients, has been extremely positive. We expect
that this white paper may appeal to a broad range of specialists and managers working in the area of software
development.




Information technology (IT) 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.

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, eight-cored processors are still incapable of automating the mental activities of today’s
programmers. The tools, which provide version control, building, designing, and automated testing just decrease the
number of mistakes and defects, but they do not create software “themselves.” And, there is no tool that can
increase the speed of programmer’s code-writing two- or three-fold.

We must admit that the industry, which develops automation systems for all the others, cannot 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.
Armstrong and Baron(1998) define performance management as a strategic and integrated method of achieving the
success of an organization by increasing the quality of employees’ work, as well as the capabilities of both working
groups and separate employees. Performance management is:

            1. 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.
            2. Integrated, because all the elements of an organization, such as departments, teams, and
               employees should be managed logically, in order to achieve a common goal.
            3. 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.
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.

There are a number of factors that influence work efficiency:

            1. Personal factors—the knowledge, competency, motivation, and morale of a person.
            2. Leadership factors—the ability of a group leader to inspire, manage, and support his or her team.
            3. Team factors—the ability of colleagues to provide support to each other.
            4. System factors—the system of work and inventory provided by an organization.
            5. Situational factors—internal and external pressure and changes.




There are two well-known expressions that characterize performance measurement:

            1. Those tasks are executed, which are measured. You cannot manage the process if you do not
               measure it.
In order to improve overall performance, one must first begin my 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:

            1. Provides customer satisfaction
            2. Provides a basis for comparison
3. Provides a “scale” to employees, which allows them to monitor their efficiency
            4. Highlights quality problems and suggests areas that require immediate attention
            5. Gives a notion of the costs of low-quality work
            6. Approves resources usage
            7. Provides information necessary for further actions that should be taken to increase performance
The results of a survey (Armstrong & 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:

            1. They had larger margins, a better cash flow, higher stock exchange ratings, and a higher
               capitalization.
            2. They provided a considerable gain in financial activity and performance during the previous three
               years.
            3. They had a lower specific increase in the number of employees.




Armstrong and Baron (1998) point out that the performance measurement must:

            1. Be connected with the strategic goals of a company or a team.
            2. Be attributed to the tasks and responsibilities of employees. Measurement is efficient under the
               condition that personal responsibility is attached to it.
            3. Be concentrated on measurable results and achievements.
            4. Be manageable. It must provide information that expectations were justified to a certain extent.
            5. Correspond to the goals of measurements and data availability as much as possible.
            6. Provide reliable feedback for further actions.
            7. Involve all key aspects of work efficiency.




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.

Metrics can be divided into the following groups:
1. Financial (income, added value, profitability, expenses)
           2. Results (products sold or services provided, productivity, the number of new clients)
           3. Influential (project completion, service level, innovations)
           4. Reactions (opinions of teammates and clients)
           5. Time-Related(response time, expenditures of labor, delivery time)




The measurement results can be expressed in four ways:

           1. Calculation—quantity of units
           2. Ratio—quantity of the units related to the maximum possible number of them
           3. Percentage—proportion of real achievements versus possible ones
           4. Financial Results—gains or losses




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.




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.




“Benchmarking” 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.
On the whole, “evolution” is the development of individuals’ 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.

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.

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.

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.




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:

            1. It motivates people to work harder and develop their skills and competencies.
            2. It spreads a sense of the importance of efficient work.
            3. It compensates people differently and depends on their work efficiency, their competency, and input.
Armstrong and Murlis (1994) formulated “eight golden rules” of compensation paid to groups and individuals for their
efficiency:

            1. Both teams and individuals must clearly understand their goals and assessment standards.
            2. They must be able to track their movement toward the goals throughout the period during which they
               will be assessed.
            3. They must be able to affect their work efficiency.
            4. They must understand what compensation they will get for achieving the results. There should be a
               direct correlation between the efforts and the rewards.
            5. The reward must follow the achievement immediately.
            6. The reward should be noticeable.
            7. The results necessary for the reward receipt must be achievable, but not too easy.
8. The rewarding basis must be positively described and easily understood.
A compensation system based on the performance results has the following advantages:

            1. It motivates people to achieve better performance.
            2. It gives correct goals orientation.
            3. It fairly rewards employees for their performance.
            4. It provides efficient methods of rewarding and achievements recognition.
However, it also has a number of contingent shortcomings:

            1. The motivation factor is not guaranteed. It is often difficult-to-impossible to correspond to the
               rewarding criteria.
            2. 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.
            3. Such a compensatory system may make salaries grow faster than the benefits of the work
               improvement results.
            4. The system may depress teamwork due to its individualistic nature.
            5. Despite having good metrics, the work may appear to be inefficient and of poor quality.
            6. The system may make short-term goals more appealing to employees than the long-term ones.
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.




Management of inefficient work is divided into three stages:

            1. Identify the problem.
            2. Understand the reasons for its origin.
            3. Make an effort to “cure” it.
Generally there are two sides that are responsible for work efficiency— organizations and individuals.

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:
1. 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.
           2. Train managers to handle inefficiency and discipline problems.
           3. Constantly conduct monitoring of work efficiency and analyze the reasons for failures.
           4. Stimulate education in the organization.
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:

            1. Define critical behavior—what individual processes should be modified?
           2. Measure the frequency of the problem—get clear evidence of the existence of the problem.
           3. Conduct functional analysis—define what stimuli caused the behavior and/or what kind of reward or
              punishment influenced the behavior.
           4. Develop and integrate a correction strategy—it may include positive or negative consequences on
              the performer.
           5. Assess the results of a correction—what improvements happened (or did not happen)? What should
              be done if the correction does not bring results?
Personal performance correction is tightly connected with psychology. Many managers do not like, or are not skilled
enough, to criticize their subordinates constructively.

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:

            1. Communicate to the assessed person that his sincere admission of his shortcoming is welcomed.
            2. Let the assessed person suggest a solution for actions correction.
            3. Provide support to assessed persons. Bring to their attention aspects that you think are acceptable
               despite being negatively perceived by themselves.
            4. Be persistent, if an assessed person does not admit the evidence of a problem. Provide details and
               examples.
            5. Address your comments to the weaknesses that can be corrected. Do not attack the personality of
               an assessed person.
            6. Do not discuss more than two weaknesses during one meeting. People can only bear a limited
               amount of criticism.
The stages of performance management system development can be generally defined as: diagnosis; procedures;
design; pilot implementation; and introduction.




           1. The first stage of developing a successful performance management system (Diagnosis), must
              include the following considerations: General data about...
                      ...the culture, traditions, and style of management in the organization.
                      ...the structure (meaning the extent of delegation and company hierarchy).
                      ...processes and systems.
                      ...strategic plans.
                      ...decision-makers and stake-holders.
           2. Weak and strong agreements about...
                      ...the management, measurement, and assessment of work quality.
                      ...work compensation.
                      ...improvement of work efficiency; development of skills and competencies.
                      ...integration of personal and team tasks.
           3. Analysis...
                      ...of tasks that should be done.
                      ...of reasons why they should be done.
                      ...of the methods for how they should be done.
           4. Assessment of...
                      ...expenses.
                      ...returns.




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’ representatives. This method allows for various opinions
and feedback, and fosters a feeling of belonging.
During the design of the performance assessment system, the following aspects should be taken into account:

           1. Process model—agreement about work efficiency
           2. Usage of tasks and competencies
           3. The ways in which tasks will be assigned, and which groups and individuals will be able to
              participate in the formulation of procedures
           4. Connection with the performance reward system
           5. Ratings
           6. Methods of measurement
           7. Ways in which competencies will be assessed
           8. The list of necessary documentation and the managers responsible for its handling
           9. How flexible the efficiency management system will be




The following points should be defined as a part of the development and implementation program:

           1. Who will participate in the program and what the responsibilities of each participant will be
           2. Timelines of development and implementation
           3. Employees’ notifications about plan details and a structure of the compensation system. It is crucial
              that these are done thoroughly and in a timely manner.
           4. Plan for education
           5. Pilot schemes
           6. Success criteria
           7. Monitoring and assessment of the implementation




In order to assess the performance management system, attention to the following issues should be paid:

           1. Processes correspond to the management culture.
           2. Top management participates in the process and supports it.
           3. Linear managers and employees understand the processes, in general, equally well.
           4. Performance management processes help unite organizational, group, and personal tasks.
5. It is obvious that performance management is helpful in getting both short-term results and long-term
              development.
           6. Performance management processes are integrated with the other HR processes.
           7. Performance management processes are flexible and are efficient under special circumstances.
           8. 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.
           9. Processes are transparent. They function fairly and without bias.
           10. Managers and team leaders undertake measures that help team members to understand the
               strategy, goals, and values of the organization.
           11. Performance management processes place each employee’s individual needs and company goals
               in line.
           12. Employees are able to express their opinions about whether the results expected from them are
               achievable.
           13. The primary emphasis is put on employees’ development. Financial reward is the second aspect to
               be considered.
           14. There are competency models that are developed by all the stakeholders.
           15. The goals, gains, and efficiency of the system are communicated to employees in detail.
           16. Managers, team leaders, and employees are trained to work efficiently.




Development Industry

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—a long list of arguments, which are used to
justify the impossibility of measuring their performance. Following are some examples:

           1.    “Software developers differ from sales people or factory workers. Their performance cannot be
                measured by sales volume or by the number of details produced.” Some will go further and declare
                that, “creative work cannot be measured at all.” 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.
           2.    “The more the emphasis is put on measuring major metrics, the more likely it is that the small
                unmeasured elements will be sacrificed.” 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.
3. “The quality of work suffers as employees become focused on achieving a grade rather than
               satisfying clients.” However, customer satisfaction may be used as one of the metrics.
            4.    “Measurement cannot be performed because it cannot take into account the factors that are beyond
                 control.” However, measurement just points out the changes in work efficiency, it does not explain
                 them.
            5.   “Measurement is possible only in a case where the result is measurable.” However, whenever
                 people are expected to perform some work, the extent of the work completion can be assessed.




As we may see, nowadays many software development companies invest heavily in processes re-engineering and
various automation systems. The same goals as in paragraph four apply. Companies tend to:

            1. Improve customer satisfaction.
            2. Decrease the specific number of employees.
            3. Get larger margins.
However, polishing processes cannot take the place of having skilled employees and taking care of programmers’
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.




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’s 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?
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.

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.




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.




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, “How quick is he? How much work did he do?” 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:

            1. How often does the developer miss deadlines?
            2. What is the average accuracy of the developer’s original estimations vs. the actual time it took to
               perform a task or complete a project?
            3. What is the monthly difference between the estimated time and the time actually spent on carrying
               out tasks?




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.

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—they cost investors money (Newman, 2002). The higher the severity, the higher the cost.

So, productive developers are those who work without major defects. “It is impossible,” 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, “Those people do not make mistakes who do nothing.” However, it is quite possible to compare the bug rates
of various developers and understand who is more productive.
We, at Altoros Systems, after analyzing statistical data, use a metric, which is measurable and can be applied as an
indicator of a programmer’s quality. The metric is the percentage of bugs of a definite severity or priority in the overall
number of bugs produced by the developer.

Figure 16.1 Distribution of Bugs by Severity




In Figure 16.1 Distribution of Bugs by Severity, 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.
Table 16.1 Percentage of Critical Bugs


                                           Bugs by severity

Employee          Critical      High       Medium         Low       Exception          Total      % of criticaln


Nic               8             17         11             7                            43         19


Roderic           15            18         12             7         1                  53         28


Shawn             13            26         9              11        1                  60         22


James             23            19         7              1                            50         46


Total             59            80         39             26        2                  206        29



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’s 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’ priority (severity), the stage of the project should be taken into account.




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.

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’s development.
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’s 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.

Figure 16.2: Builds result after check-in




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 “forget” 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.
Commenting on the code afterwards has proved to be more time-consuming compared with commenting on it
immediately upon completion.

Figure 16.3: Number of builds in compliance with the coding standard




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 “deceived.” 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—clients and teammates.

When we designed the assessment system, we never forgot the primary purpose of any service organization—
customer 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 the 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.

The assessment of team members in accordance with the method of 360 degrees (Edwards & 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:

            1. Discipline
            2. Time management
            3. Ability to understand and convey ideas
            4. Desire to acquire new knowledge
            5. Speed of work
            6. Assistance to other team members
            7. Leadership
            8. Quality of work
            9. Positive thinking
            10. Independence in work




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 “expenses”.

            1. Automation tools, which would allow measuring the quantity of bugs, check-ins, policy violations, etc.
            2. Time of employees who participate in              performance system design, development, and
               implementation
            3. Time for competency scales creation
            4. Time for interviewing the employees. (The time of     both the interviewer and the interviewee should
               be taken into account.)
            5. Time for creation of personal development plans
            6. Trainings and seminars
            7. System evaluation and correction
            8. Examination fees
            9. Time for examination
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:

           1. Clear understanding of “Performance Management.”
           2. Understanding of the company’s values and its desire to establish a “performance management
              culture.”
           3. Laser focus on the individual benefits to employees and their role in the process.
Armstrong, M., & Baron, A. (1998). Performance Management: The new realities. London: Institute of Personnel and
Development.

Armstrong, M., & Murlis, H. (1994). Reward Management: A handbook of remuneration strategy and practice. 3rd
edn. London: Kogan Page.

Edwards, M., & Ewen, A. (1996). 360-Degree Feedback. New York: American Management Association.

Fletcher, C., & Williams, R. (1992). Organisational Experience. London: Institute of Personnel Management.

Luthans, F., & Kreitner, R. (1975). Organizational Behaviour Modification. Genview: Scott-Foresman.

Newman, M. (2002, 06 28). Software Errors Cost U.S. Economy $59.5 Billion Annually. Retrieved 12 10, 2007, from
NIST News: http://www.nist.gov/public_affairs/releases/n02-10.htm

Oakland, C. (1993). Total Quality Management: The route to improved performance. 2nd edn. Oxford: Butterworth-
Heinemann.

Source Code Comments. (n.d.). Retrieved 12 10, 2007, from Literate Programming:
http://www.literateprogramming.com/quotes_sc.html

More Related Content

What's hot

Customer service engineer kpi
Customer service engineer kpiCustomer service engineer kpi
Customer service engineer kpicoreritas
 
Junior project manager performance appraisal
Junior project manager performance appraisalJunior project manager performance appraisal
Junior project manager performance appraisallindacami643
 
Executive assistant kpi
Executive assistant kpiExecutive assistant kpi
Executive assistant kpifugesdvay
 
Business development manager kpi
Business development manager kpiBusiness development manager kpi
Business development manager kpibiklejamebrow
 
Project administrator performance appraisal
Project administrator performance appraisalProject administrator performance appraisal
Project administrator performance appraisalbethanywood68
 
• Business development executive job description • Business development execu...
•	Business development executive job description •	Business development execu...•	Business development executive job description •	Business development execu...
• Business development executive job description • Business development execu...richardclark986
 
Hotel chief engineer kpi
Hotel chief engineer kpiHotel chief engineer kpi
Hotel chief engineer kpideripotsri
 
Hvac technician kpi
Hvac technician kpiHvac technician kpi
Hvac technician kpigesfasri
 
Electrical engineer performance appraisal
Electrical engineer performance appraisalElectrical engineer performance appraisal
Electrical engineer performance appraisalmartinezrosie780
 
Office receptionist kpi
Office receptionist kpiOffice receptionist kpi
Office receptionist kpijomxasres
 
Quality surveyor kpi
Quality surveyor kpiQuality surveyor kpi
Quality surveyor kpimecarjom
 
Campaign coordinator performance appraisal
Campaign coordinator performance appraisalCampaign coordinator performance appraisal
Campaign coordinator performance appraisalRonaldKoeman345
 
Technical support manager kpi
Technical support manager kpiTechnical support manager kpi
Technical support manager kpitomjonhss
 
Senior technical architect performance appraisal
Senior technical architect performance appraisalSenior technical architect performance appraisal
Senior technical architect performance appraisalwalkerjohn4190
 
Project administrator kpi
Project administrator kpiProject administrator kpi
Project administrator kpikettarit
 
Chief product officer kpi
Chief product officer kpiChief product officer kpi
Chief product officer kpiviretjom
 
Accounting clerk kpi
Accounting clerk kpiAccounting clerk kpi
Accounting clerk kpijemmtira
 
Chief software architect performance appraisal
Chief software architect performance appraisalChief software architect performance appraisal
Chief software architect performance appraisalmorganabbie765
 
Construction site supervisor kpi
Construction site supervisor kpiConstruction site supervisor kpi
Construction site supervisor kpikaidavirta
 
Technical director performance appraisal
Technical director performance appraisalTechnical director performance appraisal
Technical director performance appraisalmolliebell246
 

What's hot (20)

Customer service engineer kpi
Customer service engineer kpiCustomer service engineer kpi
Customer service engineer kpi
 
Junior project manager performance appraisal
Junior project manager performance appraisalJunior project manager performance appraisal
Junior project manager performance appraisal
 
Executive assistant kpi
Executive assistant kpiExecutive assistant kpi
Executive assistant kpi
 
Business development manager kpi
Business development manager kpiBusiness development manager kpi
Business development manager kpi
 
Project administrator performance appraisal
Project administrator performance appraisalProject administrator performance appraisal
Project administrator performance appraisal
 
• Business development executive job description • Business development execu...
•	Business development executive job description •	Business development execu...•	Business development executive job description •	Business development execu...
• Business development executive job description • Business development execu...
 
Hotel chief engineer kpi
Hotel chief engineer kpiHotel chief engineer kpi
Hotel chief engineer kpi
 
Hvac technician kpi
Hvac technician kpiHvac technician kpi
Hvac technician kpi
 
Electrical engineer performance appraisal
Electrical engineer performance appraisalElectrical engineer performance appraisal
Electrical engineer performance appraisal
 
Office receptionist kpi
Office receptionist kpiOffice receptionist kpi
Office receptionist kpi
 
Quality surveyor kpi
Quality surveyor kpiQuality surveyor kpi
Quality surveyor kpi
 
Campaign coordinator performance appraisal
Campaign coordinator performance appraisalCampaign coordinator performance appraisal
Campaign coordinator performance appraisal
 
Technical support manager kpi
Technical support manager kpiTechnical support manager kpi
Technical support manager kpi
 
Senior technical architect performance appraisal
Senior technical architect performance appraisalSenior technical architect performance appraisal
Senior technical architect performance appraisal
 
Project administrator kpi
Project administrator kpiProject administrator kpi
Project administrator kpi
 
Chief product officer kpi
Chief product officer kpiChief product officer kpi
Chief product officer kpi
 
Accounting clerk kpi
Accounting clerk kpiAccounting clerk kpi
Accounting clerk kpi
 
Chief software architect performance appraisal
Chief software architect performance appraisalChief software architect performance appraisal
Chief software architect performance appraisal
 
Construction site supervisor kpi
Construction site supervisor kpiConstruction site supervisor kpi
Construction site supervisor kpi
 
Technical director performance appraisal
Technical director performance appraisalTechnical director performance appraisal
Technical director performance appraisal
 

Viewers also liked

Five Mistakes to Avoid in Creating User Interfaces for Mobile Devices
Five Mistakes to Avoid in Creating User Interfaces for Mobile DevicesFive Mistakes to Avoid in Creating User Interfaces for Mobile Devices
Five Mistakes to Avoid in Creating User Interfaces for Mobile DevicesAltoros
 
Five Tools to Know About When Developing Software for Social Networks
Five Tools to Know About When Developing Software for Social NetworksFive Tools to Know About When Developing Software for Social Networks
Five Tools to Know About When Developing Software for Social NetworksAltoros
 
Soergel oa week-2014-lightning
Soergel oa week-2014-lightningSoergel oa week-2014-lightning
Soergel oa week-2014-lightningDavid Soergel
 
Accessible Javascript with and without WAI ARIA
Accessible Javascript with and without WAI ARIAAccessible Javascript with and without WAI ARIA
Accessible Javascript with and without WAI ARIADirk Ginader
 
Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010Dirk Ginader
 
Performance evaluation in IT company
Performance evaluation in IT companyPerformance evaluation in IT company
Performance evaluation in IT companyDmitry Guyvoronsky
 
The 5 Layers of Web Accessibility
The 5 Layers of Web AccessibilityThe 5 Layers of Web Accessibility
The 5 Layers of Web AccessibilityDirk Ginader
 
1.9. el uso de can y can't, oraciones y preguntas con este verbo
1.9.  el uso de can y can't, oraciones y preguntas con este verbo1.9.  el uso de can y can't, oraciones y preguntas con este verbo
1.9. el uso de can y can't, oraciones y preguntas con este verboAlberto Carranza Garcia
 
Ubuntu 16.04 LTS Security Features
Ubuntu 16.04 LTS Security FeaturesUbuntu 16.04 LTS Security Features
Ubuntu 16.04 LTS Security FeaturesDustin Kirkland
 
Javascript done right
Javascript done rightJavascript done right
Javascript done rightDirk Ginader
 

Viewers also liked (10)

Five Mistakes to Avoid in Creating User Interfaces for Mobile Devices
Five Mistakes to Avoid in Creating User Interfaces for Mobile DevicesFive Mistakes to Avoid in Creating User Interfaces for Mobile Devices
Five Mistakes to Avoid in Creating User Interfaces for Mobile Devices
 
Five Tools to Know About When Developing Software for Social Networks
Five Tools to Know About When Developing Software for Social NetworksFive Tools to Know About When Developing Software for Social Networks
Five Tools to Know About When Developing Software for Social Networks
 
Soergel oa week-2014-lightning
Soergel oa week-2014-lightningSoergel oa week-2014-lightning
Soergel oa week-2014-lightning
 
Accessible Javascript with and without WAI ARIA
Accessible Javascript with and without WAI ARIAAccessible Javascript with and without WAI ARIA
Accessible Javascript with and without WAI ARIA
 
Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010
 
Performance evaluation in IT company
Performance evaluation in IT companyPerformance evaluation in IT company
Performance evaluation in IT company
 
The 5 Layers of Web Accessibility
The 5 Layers of Web AccessibilityThe 5 Layers of Web Accessibility
The 5 Layers of Web Accessibility
 
1.9. el uso de can y can't, oraciones y preguntas con este verbo
1.9.  el uso de can y can't, oraciones y preguntas con este verbo1.9.  el uso de can y can't, oraciones y preguntas con este verbo
1.9. el uso de can y can't, oraciones y preguntas con este verbo
 
Ubuntu 16.04 LTS Security Features
Ubuntu 16.04 LTS Security FeaturesUbuntu 16.04 LTS Security Features
Ubuntu 16.04 LTS Security Features
 
Javascript done right
Javascript done rightJavascript done right
Javascript done right
 

Similar to Five Ways To Measure Your Programmers Performance

Project on performance appraisal
Project on performance appraisalProject on performance appraisal
Project on performance appraisalayushi pandey
 
Employee performance evaluation
Employee performance evaluationEmployee performance evaluation
Employee performance evaluationLinmary2010
 
RANJITH KUMAR PERFORMANCE MAIN.docx
RANJITH KUMAR PERFORMANCE MAIN.docxRANJITH KUMAR PERFORMANCE MAIN.docx
RANJITH KUMAR PERFORMANCE MAIN.docxRarokiyapraveenRaj
 
Enterprise performance-management
Enterprise performance-managementEnterprise performance-management
Enterprise performance-managementOmair Mustafa
 
Analyzing performance appraisal system
Analyzing performance appraisal systemAnalyzing performance appraisal system
Analyzing performance appraisal systemVinayak Halapeti
 
Management And Performance
Management And PerformanceManagement And Performance
Management And PerformanceVeronica Smith
 
Performance Management System
Performance Management SystemPerformance Management System
Performance Management SystemMayank Singh
 
Lecture 4 quality performance measurement tools and techniques
Lecture 4 quality performance measurement tools and techniquesLecture 4 quality performance measurement tools and techniques
Lecture 4 quality performance measurement tools and techniquesTantish QS, UTM
 
Performance appraisal-project-report
Performance appraisal-project-reportPerformance appraisal-project-report
Performance appraisal-project-reportBabu Shiva
 
Data1. From the Table below prepare the following Financial Statem.docx
Data1. From the Table below prepare the following Financial Statem.docxData1. From the Table below prepare the following Financial Statem.docx
Data1. From the Table below prepare the following Financial Statem.docxwhittemorelucilla
 
Review of literature on performance appraisal system
Review of literature on performance appraisal systemReview of literature on performance appraisal system
Review of literature on performance appraisal systemelenavogel8
 
Employee performance appraisal
Employee performance appraisalEmployee performance appraisal
Employee performance appraisalpoppyclark68
 
How to Create a Balanced Performance Scorecard
How to Create a Balanced Performance ScorecardHow to Create a Balanced Performance Scorecard
How to Create a Balanced Performance ScorecardLeading Resources, Inc.
 
How to performance appraisal
How to performance appraisalHow to performance appraisal
How to performance appraisalbenhouston803
 
INTRODUCTION TO BUSINESS SYSTEM PPT NEW.pptx
INTRODUCTION TO BUSINESS SYSTEM PPT NEW.pptxINTRODUCTION TO BUSINESS SYSTEM PPT NEW.pptx
INTRODUCTION TO BUSINESS SYSTEM PPT NEW.pptxBinduNair38
 
Human Resource Planning & Development (HRDP)
Human Resource Planning & Development (HRDP)Human Resource Planning & Development (HRDP)
Human Resource Planning & Development (HRDP)Manu Alias
 

Similar to Five Ways To Measure Your Programmers Performance (20)

Performance managment
Performance managmentPerformance managment
Performance managment
 
Project on performance appraisal
Project on performance appraisalProject on performance appraisal
Project on performance appraisal
 
Employee performance evaluation
Employee performance evaluationEmployee performance evaluation
Employee performance evaluation
 
RANJITH KUMAR PERFORMANCE MAIN.docx
RANJITH KUMAR PERFORMANCE MAIN.docxRANJITH KUMAR PERFORMANCE MAIN.docx
RANJITH KUMAR PERFORMANCE MAIN.docx
 
Enterprise performance-management
Enterprise performance-managementEnterprise performance-management
Enterprise performance-management
 
Performance management
Performance managementPerformance management
Performance management
 
Analyzing performance appraisal system
Analyzing performance appraisal systemAnalyzing performance appraisal system
Analyzing performance appraisal system
 
Management And Performance
Management And PerformanceManagement And Performance
Management And Performance
 
Performance Management System
Performance Management SystemPerformance Management System
Performance Management System
 
Lecture 4 quality performance measurement tools and techniques
Lecture 4 quality performance measurement tools and techniquesLecture 4 quality performance measurement tools and techniques
Lecture 4 quality performance measurement tools and techniques
 
Performance appraisal-project-report
Performance appraisal-project-reportPerformance appraisal-project-report
Performance appraisal-project-report
 
Data1. From the Table below prepare the following Financial Statem.docx
Data1. From the Table below prepare the following Financial Statem.docxData1. From the Table below prepare the following Financial Statem.docx
Data1. From the Table below prepare the following Financial Statem.docx
 
Review of literature on performance appraisal system
Review of literature on performance appraisal systemReview of literature on performance appraisal system
Review of literature on performance appraisal system
 
TraresJordanK_M7_A3
TraresJordanK_M7_A3TraresJordanK_M7_A3
TraresJordanK_M7_A3
 
MBA IV SEM HR-PMC.pdf
MBA IV SEM HR-PMC.pdfMBA IV SEM HR-PMC.pdf
MBA IV SEM HR-PMC.pdf
 
Employee performance appraisal
Employee performance appraisalEmployee performance appraisal
Employee performance appraisal
 
How to Create a Balanced Performance Scorecard
How to Create a Balanced Performance ScorecardHow to Create a Balanced Performance Scorecard
How to Create a Balanced Performance Scorecard
 
How to performance appraisal
How to performance appraisalHow to performance appraisal
How to performance appraisal
 
INTRODUCTION TO BUSINESS SYSTEM PPT NEW.pptx
INTRODUCTION TO BUSINESS SYSTEM PPT NEW.pptxINTRODUCTION TO BUSINESS SYSTEM PPT NEW.pptx
INTRODUCTION TO BUSINESS SYSTEM PPT NEW.pptx
 
Human Resource Planning & Development (HRDP)
Human Resource Planning & Development (HRDP)Human Resource Planning & Development (HRDP)
Human Resource Planning & Development (HRDP)
 

More from Altoros

Maturing with Kubernetes
Maturing with KubernetesMaturing with Kubernetes
Maturing with KubernetesAltoros
 
Kubernetes Platform Readiness and Maturity Assessment
Kubernetes Platform Readiness and Maturity AssessmentKubernetes Platform Readiness and Maturity Assessment
Kubernetes Platform Readiness and Maturity AssessmentAltoros
 
Journey Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment MaturityJourney Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment MaturityAltoros
 
SGX: Improving Privacy, Security, and Trust Across Blockchain Networks
SGX: Improving Privacy, Security, and Trust Across Blockchain NetworksSGX: Improving Privacy, Security, and Trust Across Blockchain Networks
SGX: Improving Privacy, Security, and Trust Across Blockchain NetworksAltoros
 
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...Altoros
 
A Zero-Knowledge Proof: Improving Privacy on a Blockchain
A Zero-Knowledge Proof:  Improving Privacy on a BlockchainA Zero-Knowledge Proof:  Improving Privacy on a Blockchain
A Zero-Knowledge Proof: Improving Privacy on a BlockchainAltoros
 
Crap. Your Big Data Kitchen Is Broken.
Crap. Your Big Data Kitchen Is Broken.Crap. Your Big Data Kitchen Is Broken.
Crap. Your Big Data Kitchen Is Broken.Altoros
 
Containers and Kubernetes
Containers and KubernetesContainers and Kubernetes
Containers and KubernetesAltoros
 
Distributed Ledger Technology for Over-the-Counter Trading
Distributed Ledger Technology for Over-the-Counter TradingDistributed Ledger Technology for Over-the-Counter Trading
Distributed Ledger Technology for Over-the-Counter TradingAltoros
 
5-Step Deployment of Hyperledger Fabric on Multiple Nodes
5-Step Deployment of Hyperledger Fabric on Multiple Nodes5-Step Deployment of Hyperledger Fabric on Multiple Nodes
5-Step Deployment of Hyperledger Fabric on Multiple NodesAltoros
 
Deploying Kubernetes on GCP with Kubespray
Deploying Kubernetes on GCP with KubesprayDeploying Kubernetes on GCP with Kubespray
Deploying Kubernetes on GCP with KubesprayAltoros
 
UAA for Kubernetes
UAA for KubernetesUAA for Kubernetes
UAA for KubernetesAltoros
 
Troubleshooting .NET Applications on Cloud Foundry
Troubleshooting .NET Applications on Cloud FoundryTroubleshooting .NET Applications on Cloud Foundry
Troubleshooting .NET Applications on Cloud FoundryAltoros
 
Continuous Integration and Deployment with Jenkins for PCF
Continuous Integration and Deployment with Jenkins for PCFContinuous Integration and Deployment with Jenkins for PCF
Continuous Integration and Deployment with Jenkins for PCFAltoros
 
How to Never Leave Your Deployment Unattended
How to Never Leave Your Deployment UnattendedHow to Never Leave Your Deployment Unattended
How to Never Leave Your Deployment UnattendedAltoros
 
Cloud Foundry Monitoring How-To: Collecting Metrics and Logs
Cloud Foundry Monitoring How-To: Collecting Metrics and LogsCloud Foundry Monitoring How-To: Collecting Metrics and Logs
Cloud Foundry Monitoring How-To: Collecting Metrics and LogsAltoros
 
Smart Baggage Tracking: End-to-End Sensor-Based Solution
Smart Baggage Tracking: End-to-End Sensor-Based SolutionSmart Baggage Tracking: End-to-End Sensor-Based Solution
Smart Baggage Tracking: End-to-End Sensor-Based SolutionAltoros
 
Navigating the Ecosystem of Pivotal Cloud Foundry Tiles
Navigating the Ecosystem of Pivotal Cloud Foundry TilesNavigating the Ecosystem of Pivotal Cloud Foundry Tiles
Navigating the Ecosystem of Pivotal Cloud Foundry TilesAltoros
 
AI as a Catalyst for IoT
AI as a Catalyst for IoTAI as a Catalyst for IoT
AI as a Catalyst for IoTAltoros
 
Over-Engineering: Causes, Symptoms, and Treatment
Over-Engineering: Causes, Symptoms, and TreatmentOver-Engineering: Causes, Symptoms, and Treatment
Over-Engineering: Causes, Symptoms, and TreatmentAltoros
 

More from Altoros (20)

Maturing with Kubernetes
Maturing with KubernetesMaturing with Kubernetes
Maturing with Kubernetes
 
Kubernetes Platform Readiness and Maturity Assessment
Kubernetes Platform Readiness and Maturity AssessmentKubernetes Platform Readiness and Maturity Assessment
Kubernetes Platform Readiness and Maturity Assessment
 
Journey Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment MaturityJourney Through Four Stages of Kubernetes Deployment Maturity
Journey Through Four Stages of Kubernetes Deployment Maturity
 
SGX: Improving Privacy, Security, and Trust Across Blockchain Networks
SGX: Improving Privacy, Security, and Trust Across Blockchain NetworksSGX: Improving Privacy, Security, and Trust Across Blockchain Networks
SGX: Improving Privacy, Security, and Trust Across Blockchain Networks
 
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD ...
 
A Zero-Knowledge Proof: Improving Privacy on a Blockchain
A Zero-Knowledge Proof:  Improving Privacy on a BlockchainA Zero-Knowledge Proof:  Improving Privacy on a Blockchain
A Zero-Knowledge Proof: Improving Privacy on a Blockchain
 
Crap. Your Big Data Kitchen Is Broken.
Crap. Your Big Data Kitchen Is Broken.Crap. Your Big Data Kitchen Is Broken.
Crap. Your Big Data Kitchen Is Broken.
 
Containers and Kubernetes
Containers and KubernetesContainers and Kubernetes
Containers and Kubernetes
 
Distributed Ledger Technology for Over-the-Counter Trading
Distributed Ledger Technology for Over-the-Counter TradingDistributed Ledger Technology for Over-the-Counter Trading
Distributed Ledger Technology for Over-the-Counter Trading
 
5-Step Deployment of Hyperledger Fabric on Multiple Nodes
5-Step Deployment of Hyperledger Fabric on Multiple Nodes5-Step Deployment of Hyperledger Fabric on Multiple Nodes
5-Step Deployment of Hyperledger Fabric on Multiple Nodes
 
Deploying Kubernetes on GCP with Kubespray
Deploying Kubernetes on GCP with KubesprayDeploying Kubernetes on GCP with Kubespray
Deploying Kubernetes on GCP with Kubespray
 
UAA for Kubernetes
UAA for KubernetesUAA for Kubernetes
UAA for Kubernetes
 
Troubleshooting .NET Applications on Cloud Foundry
Troubleshooting .NET Applications on Cloud FoundryTroubleshooting .NET Applications on Cloud Foundry
Troubleshooting .NET Applications on Cloud Foundry
 
Continuous Integration and Deployment with Jenkins for PCF
Continuous Integration and Deployment with Jenkins for PCFContinuous Integration and Deployment with Jenkins for PCF
Continuous Integration and Deployment with Jenkins for PCF
 
How to Never Leave Your Deployment Unattended
How to Never Leave Your Deployment UnattendedHow to Never Leave Your Deployment Unattended
How to Never Leave Your Deployment Unattended
 
Cloud Foundry Monitoring How-To: Collecting Metrics and Logs
Cloud Foundry Monitoring How-To: Collecting Metrics and LogsCloud Foundry Monitoring How-To: Collecting Metrics and Logs
Cloud Foundry Monitoring How-To: Collecting Metrics and Logs
 
Smart Baggage Tracking: End-to-End Sensor-Based Solution
Smart Baggage Tracking: End-to-End Sensor-Based SolutionSmart Baggage Tracking: End-to-End Sensor-Based Solution
Smart Baggage Tracking: End-to-End Sensor-Based Solution
 
Navigating the Ecosystem of Pivotal Cloud Foundry Tiles
Navigating the Ecosystem of Pivotal Cloud Foundry TilesNavigating the Ecosystem of Pivotal Cloud Foundry Tiles
Navigating the Ecosystem of Pivotal Cloud Foundry Tiles
 
AI as a Catalyst for IoT
AI as a Catalyst for IoTAI as a Catalyst for IoT
AI as a Catalyst for IoT
 
Over-Engineering: Causes, Symptoms, and Treatment
Over-Engineering: Causes, Symptoms, and TreatmentOver-Engineering: Causes, Symptoms, and Treatment
Over-Engineering: Causes, Symptoms, and Treatment
 

Recently uploaded

Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Recently uploaded (20)

Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Five Ways To Measure Your Programmers Performance

  • 1.
  • 2.
  • 3.
  • 4. Productivity and efficiency are the most critical factors of any company’s 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’s 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. 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 can even lead to employees—including valued specialists—leaving the company. These issues made our management team at Altoros Systems 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 a system from scratch. After spending hours studying best practices, conducting meetings, and fostering discussions—as well as some trial and error—we have created a system, which, in addition to the aforementioned primary purposes, serves as a motivating tool in the self-development of people. Feedback, including from our valued clients, has been extremely positive. We expect that this white paper may appeal to a broad range of specialists and managers working in the area of software development. Information technology (IT) 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. 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, eight-cored processors are still incapable of automating the mental activities of today’s programmers. The tools, which provide version control, building, designing, and automated testing just decrease the number of mistakes and defects, but they do not create software “themselves.” And, there is no tool that can increase the speed of programmer’s code-writing two- or three-fold. We must admit that the industry, which develops automation systems for all the others, cannot 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.
  • 5. Armstrong and Baron(1998) define performance management as a strategic and integrated method of achieving the success of an organization by increasing the quality of employees’ work, as well as the capabilities of both working groups and separate employees. Performance management is: 1. 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. 2. Integrated, because all the elements of an organization, such as departments, teams, and employees should be managed logically, in order to achieve a common goal. 3. 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. 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. There are a number of factors that influence work efficiency: 1. Personal factors—the knowledge, competency, motivation, and morale of a person. 2. Leadership factors—the ability of a group leader to inspire, manage, and support his or her team. 3. Team factors—the ability of colleagues to provide support to each other. 4. System factors—the system of work and inventory provided by an organization. 5. Situational factors—internal and external pressure and changes. There are two well-known expressions that characterize performance measurement: 1. Those tasks are executed, which are measured. You cannot manage the process if you do not measure it. In order to improve overall performance, one must first begin my 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: 1. Provides customer satisfaction 2. Provides a basis for comparison
  • 6. 3. Provides a “scale” to employees, which allows them to monitor their efficiency 4. Highlights quality problems and suggests areas that require immediate attention 5. Gives a notion of the costs of low-quality work 6. Approves resources usage 7. Provides information necessary for further actions that should be taken to increase performance The results of a survey (Armstrong & 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: 1. They had larger margins, a better cash flow, higher stock exchange ratings, and a higher capitalization. 2. They provided a considerable gain in financial activity and performance during the previous three years. 3. They had a lower specific increase in the number of employees. Armstrong and Baron (1998) point out that the performance measurement must: 1. Be connected with the strategic goals of a company or a team. 2. Be attributed to the tasks and responsibilities of employees. Measurement is efficient under the condition that personal responsibility is attached to it. 3. Be concentrated on measurable results and achievements. 4. Be manageable. It must provide information that expectations were justified to a certain extent. 5. Correspond to the goals of measurements and data availability as much as possible. 6. Provide reliable feedback for further actions. 7. Involve all key aspects of work efficiency. 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. Metrics can be divided into the following groups:
  • 7. 1. Financial (income, added value, profitability, expenses) 2. Results (products sold or services provided, productivity, the number of new clients) 3. Influential (project completion, service level, innovations) 4. Reactions (opinions of teammates and clients) 5. Time-Related(response time, expenditures of labor, delivery time) The measurement results can be expressed in four ways: 1. Calculation—quantity of units 2. Ratio—quantity of the units related to the maximum possible number of them 3. Percentage—proportion of real achievements versus possible ones 4. Financial Results—gains or losses 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. 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. “Benchmarking” 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.
  • 8. On the whole, “evolution” is the development of individuals’ 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. 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. 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. 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. 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: 1. It motivates people to work harder and develop their skills and competencies. 2. It spreads a sense of the importance of efficient work. 3. It compensates people differently and depends on their work efficiency, their competency, and input. Armstrong and Murlis (1994) formulated “eight golden rules” of compensation paid to groups and individuals for their efficiency: 1. Both teams and individuals must clearly understand their goals and assessment standards. 2. They must be able to track their movement toward the goals throughout the period during which they will be assessed. 3. They must be able to affect their work efficiency. 4. They must understand what compensation they will get for achieving the results. There should be a direct correlation between the efforts and the rewards. 5. The reward must follow the achievement immediately. 6. The reward should be noticeable. 7. The results necessary for the reward receipt must be achievable, but not too easy.
  • 9. 8. The rewarding basis must be positively described and easily understood. A compensation system based on the performance results has the following advantages: 1. It motivates people to achieve better performance. 2. It gives correct goals orientation. 3. It fairly rewards employees for their performance. 4. It provides efficient methods of rewarding and achievements recognition. However, it also has a number of contingent shortcomings: 1. The motivation factor is not guaranteed. It is often difficult-to-impossible to correspond to the rewarding criteria. 2. 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. 3. Such a compensatory system may make salaries grow faster than the benefits of the work improvement results. 4. The system may depress teamwork due to its individualistic nature. 5. Despite having good metrics, the work may appear to be inefficient and of poor quality. 6. The system may make short-term goals more appealing to employees than the long-term ones. 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. Management of inefficient work is divided into three stages: 1. Identify the problem. 2. Understand the reasons for its origin. 3. Make an effort to “cure” it. Generally there are two sides that are responsible for work efficiency— organizations and individuals. 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:
  • 10. 1. 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. 2. Train managers to handle inefficiency and discipline problems. 3. Constantly conduct monitoring of work efficiency and analyze the reasons for failures. 4. Stimulate education in the organization. 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: 1. Define critical behavior—what individual processes should be modified? 2. Measure the frequency of the problem—get clear evidence of the existence of the problem. 3. Conduct functional analysis—define what stimuli caused the behavior and/or what kind of reward or punishment influenced the behavior. 4. Develop and integrate a correction strategy—it may include positive or negative consequences on the performer. 5. Assess the results of a correction—what improvements happened (or did not happen)? What should be done if the correction does not bring results? Personal performance correction is tightly connected with psychology. Many managers do not like, or are not skilled enough, to criticize their subordinates constructively. 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: 1. Communicate to the assessed person that his sincere admission of his shortcoming is welcomed. 2. Let the assessed person suggest a solution for actions correction. 3. Provide support to assessed persons. Bring to their attention aspects that you think are acceptable despite being negatively perceived by themselves. 4. Be persistent, if an assessed person does not admit the evidence of a problem. Provide details and examples. 5. Address your comments to the weaknesses that can be corrected. Do not attack the personality of an assessed person. 6. Do not discuss more than two weaknesses during one meeting. People can only bear a limited amount of criticism.
  • 11. The stages of performance management system development can be generally defined as: diagnosis; procedures; design; pilot implementation; and introduction. 1. The first stage of developing a successful performance management system (Diagnosis), must include the following considerations: General data about...  ...the culture, traditions, and style of management in the organization.  ...the structure (meaning the extent of delegation and company hierarchy).  ...processes and systems.  ...strategic plans.  ...decision-makers and stake-holders. 2. Weak and strong agreements about...  ...the management, measurement, and assessment of work quality.  ...work compensation.  ...improvement of work efficiency; development of skills and competencies.  ...integration of personal and team tasks. 3. Analysis...  ...of tasks that should be done.  ...of reasons why they should be done.  ...of the methods for how they should be done. 4. Assessment of...  ...expenses.  ...returns. 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’ representatives. This method allows for various opinions and feedback, and fosters a feeling of belonging.
  • 12. During the design of the performance assessment system, the following aspects should be taken into account: 1. Process model—agreement about work efficiency 2. Usage of tasks and competencies 3. The ways in which tasks will be assigned, and which groups and individuals will be able to participate in the formulation of procedures 4. Connection with the performance reward system 5. Ratings 6. Methods of measurement 7. Ways in which competencies will be assessed 8. The list of necessary documentation and the managers responsible for its handling 9. How flexible the efficiency management system will be The following points should be defined as a part of the development and implementation program: 1. Who will participate in the program and what the responsibilities of each participant will be 2. Timelines of development and implementation 3. Employees’ notifications about plan details and a structure of the compensation system. It is crucial that these are done thoroughly and in a timely manner. 4. Plan for education 5. Pilot schemes 6. Success criteria 7. Monitoring and assessment of the implementation In order to assess the performance management system, attention to the following issues should be paid: 1. Processes correspond to the management culture. 2. Top management participates in the process and supports it. 3. Linear managers and employees understand the processes, in general, equally well. 4. Performance management processes help unite organizational, group, and personal tasks.
  • 13. 5. It is obvious that performance management is helpful in getting both short-term results and long-term development. 6. Performance management processes are integrated with the other HR processes. 7. Performance management processes are flexible and are efficient under special circumstances. 8. 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. 9. Processes are transparent. They function fairly and without bias. 10. Managers and team leaders undertake measures that help team members to understand the strategy, goals, and values of the organization. 11. Performance management processes place each employee’s individual needs and company goals in line. 12. Employees are able to express their opinions about whether the results expected from them are achievable. 13. The primary emphasis is put on employees’ development. Financial reward is the second aspect to be considered. 14. There are competency models that are developed by all the stakeholders. 15. The goals, gains, and efficiency of the system are communicated to employees in detail. 16. Managers, team leaders, and employees are trained to work efficiently. Development Industry 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—a long list of arguments, which are used to justify the impossibility of measuring their performance. Following are some examples: 1. “Software developers differ from sales people or factory workers. Their performance cannot be measured by sales volume or by the number of details produced.” Some will go further and declare that, “creative work cannot be measured at all.” 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. 2. “The more the emphasis is put on measuring major metrics, the more likely it is that the small unmeasured elements will be sacrificed.” 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.
  • 14. 3. “The quality of work suffers as employees become focused on achieving a grade rather than satisfying clients.” However, customer satisfaction may be used as one of the metrics. 4. “Measurement cannot be performed because it cannot take into account the factors that are beyond control.” However, measurement just points out the changes in work efficiency, it does not explain them. 5. “Measurement is possible only in a case where the result is measurable.” However, whenever people are expected to perform some work, the extent of the work completion can be assessed. As we may see, nowadays many software development companies invest heavily in processes re-engineering and various automation systems. The same goals as in paragraph four apply. Companies tend to: 1. Improve customer satisfaction. 2. Decrease the specific number of employees. 3. Get larger margins. However, polishing processes cannot take the place of having skilled employees and taking care of programmers’ 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. 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’s 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?
  • 15. 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. 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. 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. 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, “How quick is he? How much work did he do?” 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: 1. How often does the developer miss deadlines? 2. What is the average accuracy of the developer’s original estimations vs. the actual time it took to perform a task or complete a project? 3. What is the monthly difference between the estimated time and the time actually spent on carrying out tasks? 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. 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—they cost investors money (Newman, 2002). The higher the severity, the higher the cost. So, productive developers are those who work without major defects. “It is impossible,” 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, “Those people do not make mistakes who do nothing.” However, it is quite possible to compare the bug rates of various developers and understand who is more productive.
  • 16. We, at Altoros Systems, after analyzing statistical data, use a metric, which is measurable and can be applied as an indicator of a programmer’s quality. The metric is the percentage of bugs of a definite severity or priority in the overall number of bugs produced by the developer. Figure 16.1 Distribution of Bugs by Severity In Figure 16.1 Distribution of Bugs by Severity, 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.
  • 17. Table 16.1 Percentage of Critical Bugs Bugs by severity Employee Critical High Medium Low Exception Total % of criticaln Nic 8 17 11 7 43 19 Roderic 15 18 12 7 1 53 28 Shawn 13 26 9 11 1 60 22 James 23 19 7 1 50 46 Total 59 80 39 26 2 206 29 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’s 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’ priority (severity), the stage of the project should be taken into account. 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. 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’s development.
  • 18. 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’s 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. Figure 16.2: Builds result after check-in 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 “forget” 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.
  • 19. Commenting on the code afterwards has proved to be more time-consuming compared with commenting on it immediately upon completion. Figure 16.3: Number of builds in compliance with the coding standard 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 “deceived.” 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—clients and teammates. When we designed the assessment system, we never forgot the primary purpose of any service organization— customer 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 the 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. The assessment of team members in accordance with the method of 360 degrees (Edwards & Ewen, 1996), when every person who did some work on the project assesses the others, gives fair information about the real
  • 20. performance of every project participant. We have selected ten personal qualities that we think affect the overall performance most of all: 1. Discipline 2. Time management 3. Ability to understand and convey ideas 4. Desire to acquire new knowledge 5. Speed of work 6. Assistance to other team members 7. Leadership 8. Quality of work 9. Positive thinking 10. Independence in work 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 “expenses”. 1. Automation tools, which would allow measuring the quantity of bugs, check-ins, policy violations, etc. 2. Time of employees who participate in performance system design, development, and implementation 3. Time for competency scales creation 4. Time for interviewing the employees. (The time of both the interviewer and the interviewee should be taken into account.) 5. Time for creation of personal development plans 6. Trainings and seminars 7. System evaluation and correction 8. Examination fees 9. Time for examination
  • 21. 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: 1. Clear understanding of “Performance Management.” 2. Understanding of the company’s values and its desire to establish a “performance management culture.” 3. Laser focus on the individual benefits to employees and their role in the process.
  • 22. Armstrong, M., & Baron, A. (1998). Performance Management: The new realities. London: Institute of Personnel and Development. Armstrong, M., & Murlis, H. (1994). Reward Management: A handbook of remuneration strategy and practice. 3rd edn. London: Kogan Page. Edwards, M., & Ewen, A. (1996). 360-Degree Feedback. New York: American Management Association. Fletcher, C., & Williams, R. (1992). Organisational Experience. London: Institute of Personnel Management. Luthans, F., & Kreitner, R. (1975). Organizational Behaviour Modification. Genview: Scott-Foresman. Newman, M. (2002, 06 28). Software Errors Cost U.S. Economy $59.5 Billion Annually. Retrieved 12 10, 2007, from NIST News: http://www.nist.gov/public_affairs/releases/n02-10.htm Oakland, C. (1993). Total Quality Management: The route to improved performance. 2nd edn. Oxford: Butterworth- Heinemann. Source Code Comments. (n.d.). Retrieved 12 10, 2007, from Literate Programming: http://www.literateprogramming.com/quotes_sc.html