To promote the discussions on being a mature and effective manager

Tuesday, June 20, 2006

Improving return on investment during Developer training


Product development is a highly specialized activity, for innovators and managers it becomes a daunting task to maintain the product once it is developed.
Often if not always, a product is developed with extraordinary efforts of an individual or a small team having in depth knowledge of the domain which is difficult to acquire via any training program. Another problem is that while many developers and managers are aware about the benifits of documentation and other tools to be used in product development, they are offen ignored due to extra ordinary time pressures during incubation of a new product. At the time when new product  development starts, it is mostly in develop / test market scenario, and developers are in hurry or in pressures to get the working product out. And since they are quite familiar with the domain and product, all the talk about documentation appears to be an overhead.
Usually during the course of a successful product development, people who had originally worked with the product and who have the in depth knowledge about it, move to other responsibilities due to either promotions or better prospects. Now the responsibility of maintaining the
products falls on those who have never worked in that domain, with that product, or even the tools and languages used to develop the product. This new set of people may have experience in working with other products where they may have not been involved from the beginning, in such cases they may have developed
some strategy to deal with this problem or if they are lucky they get some
documentation to guide them in their efforts. Following is a way to help bring some order in such scenarios.
The starting step should be to introduce the newly hired or appointed developers to the domain systematically. Fortunately this technique is followed by good managers or excellent developers turned managers or at times it happens by chance where the developers happen to
be the users of the same product. But many other times short sighted management who is interested in quick returns of the high salary paid to the developers just jump them to the development tasks immediately which may lead to failures. and most of the
times pressures are put by those managers who do not understand either product development or the domain. but ultimate loss is suffered by the customers,
the company and developers. We need to understand that a business exists to earn handsome returns on it's investments, but a long term view is required to understand that product returns happen over a longer horizon and it requires discipline of mind to resist the tendency to get a quick return. Although fast return is not something wrong, it requires careful analysis of the situation and being aware about the potential pitfalls . A solution which may help reap good returns is to follow a
systematic process of introducing the developers to the increasing complexities of the product as well as the domain while getting some return on the
investment.
Step 1: let the developers do the user level testing as part of introduction
of the product. This may sound strange to many developers, after all they are the
developers who are promised challenging task of development and the organizations
usually pay them more than what they pay to the testers. But in spite of the high salaries, the task of testing is more important than doing the development.
Separation of testing and development is done to elliminate creator's bias, if we can train developers to be self criticle, then we may not need testing as a separate function. Organizations put in place processes to provide information of user experience to the developers, But in spite of processes, there is no substitute for a well informed developer who has instinctive understanding of user experience.
 
The testing should be formal as well as rigorous, i.e. during this time developers should log the test results, be rated as per their work
on testing etc. Duration for the testing work should be what company
perceives as necessary for a normal tester plus couple of weeks.
And since developers are involved in formal testing, they will record the results which should be used for further analysis. this way the
organization will recover some investment while developers are being trained on the product.
 
This has another advantage of filling the psychological gap between the developers and the
testers which will enhance the product quality by increased communication between them.
Step 2: An intermediate step should be to let the developers be involved in
product support! Product support requires people to understand the user
perspective,
leading them to appreciate what users actually need. This appreciation gives
refined level of domain understanding resulting in a better quality product.
since product support requires higher level of product appreciation which
comes from working on the product as a tester and working as a product
support
leads in refined understanding of customer requirement, it can really boost
the product quality.
Step 3: Now the developers are familiar with the domain, including how the
product fits in the domain, Natural transition from testing / product
support
would be to fix the defects which the developers have discovered. however it
is not at all required that they fix only those defects which they have
discovered,
it should be mostly spread over different sub components / modules / section
etc. The idea is to cover broadest span of the product. during bug fixing,
the organization will recover the investment and the developers will be
familiar with the intricacies of the product to an extent. During this faze
management
and senior developers get opportunity to evaluate the capabilities of
developer and the developers can be given future assignments for different
tasks
based on their understanding gained during this time of the product. It is
critical that during this faze the developers get the benefit of interacting
with a senior who can answer their questions. Such a senior should not be a
senior in the sense of tenure or status, should be someone with the
understanding
of the intricacies of the product and the domain. Such a person should also
be psychologically mature, and have lots of patience, as developers may have
infinite questions, and answering such very simple questions becomes
difficult for those who are very comfortable with the product.
Another advantage of defect fixing is that developers also become familiar
with the coding standards and they can familiarize themselves with commonly
available
code within the product which can be reused in their future development
efforts.
Step 4: feature enhancement, Once the developers are familiar with the
intricacies of the product and the domain, they can be involved in feature
addition
and other high level activities. Feature addition or architecture
development of products can not be learned just by text book knowledge, it
is highly
complex which matures only with experience. So such task should only be
given to developers after careful analysis of their skills and proper
introduction
of the product and the domain.
 
Since the developers have been through such a systematic introduction of the
product / domain, they will develop understanding which will be hard to get
otherwise. and during all this process of training the organization gets
return on the investment made on them.

Emotionally Mature Managers Build Great Organizations Leading to a Better Society


How do we feel when the person to whom we have to report or interact regularly does not understand our point of view or does not even care to understand? and how much do organizations pay attention to the ability to empathize with others while selecting people who might be interacting with outside customers and employees. In my view there is a total under performance with this regard in our society. A manager is usually selected either because the person was good performer in his / her field or as a manager lead to good results of the team. As they say that bottom line is important, but we also need to understand that organizations exist for longer duration than a year or 2. So results for a year or 2 may not be the correct indicators of the performance of a manager. Specially when a manager is responsible for a larger team, focusing on a short term results may harm long term potential of the organization.

Organizations should be structured in such a way that people with focus on the objectives and highest emotional maturity should be at the top and promotions should be based on the level of emotion maturity. at the end, if we want any behavior, we need to incentivize it. And the best incentives are current earnings and growth prospects.

We may begin with profit based organizations i.e. companies, and try to see how our ideas help there. If we want to develop profit based organization, we need best of human resource around, and good people are not only people with strong skills in the relevant areas, but the people who feel committed to the task at hand and the organization and are committed to do what ever it takes to make the organization succeed. How can we expect people to commit themselves if they do not feel understood by their superiors. an immediate superior is the main contact point for the employee, and for an employee the immediate superior represents the company. So anyone who is in charge of even a single person should really be good in empathizing with others. Such a person should be able to hear others problems and try to get close with them by paying attention to their feelings. He /she should have the attitude of understanding others before the desire to be understood. as the desire to be understood may lead to lots of behavioral problems. Our current companies are structured in a way that people best in their fields are promoted without attention to their emotional capabilities or it is not a major factor, (there is a lot of talk of soft skills) but most of it is not part of incentive structure. leading to the situations where best sails person may be head of the company, or best finance person is head, but the ideal situation would be that person with highest level of emotional maturity with business focus should head the company. The reason of the current situation is probably due to the fact that people who are heading these organizations are not mature so they do not understand the importance of this fact.

Equally relevant example would be the customer interface of a company, where hundreds or thousands of customers interact with company on a regular basis, the interaction occurs with customer care executives in the company. here also companies pay little attention to the emotional maturity of those customer care executives. A customer care executive is the real face of the company, and they too should have very high level of understanding of human feelings and should be able to handle unusual people with low maturity levels. Companies may argue that they do not get such employees, but the reality is that people do what is expected of them (not by words) but by real incentives. I.E. thousands of students strive to get good marks because that will get them good jobs leading to good career leading to good salaries. So if employees are paid better salaries for emotional maturity or lack of it prevents them from getting a job they will focus their energies to acquire higher maturity levels.

Next focus would be on our learning organizations and we may start with Schools which shape our future generations, we need to pay special attention that our teachers should be very good with regard to emotional maturity. Not only they should be tested during selection or training programs, they should be regularly be evaluated based on their behavior with children. A teacher who uses scolding during teaching, is not good as children also learn that scolding is a way to solve their problems. Since scolding or anger is a short term solution which does not require depth of thinking and provides immediate solution to many problems, lots of people learn that mental behavior. So we need to train our teachers who teach by their example behavior to the children those mental habits which lead them to work hard, be empathetic, and other traits for a better human being. For our schools and other learning organizations like universities, it is also important that head of the organization is also having the qualities required to understand other people and he / she is best as he / she only be able to select and train other teachers or professors who are good in this regard.

Family is a place where children learn their first and most of the other lessons of life. But if elders are themselves are not trained on skills of being empathetic with others, how would children would learn that. So elders should be focused on acquiring empathetic behavior along with respect of hard work, internalized habit of respecting once action and not caring much for the outcome. Practice of the above mental habits by teachers and our elders will lead to a generation which will be more effective in their work and will have less misery as cause of our misery is unrealistic expectations, and it can be cured by following the internalized mental habit of doing our duty with fun and not be concerned about the results. When we say not be concerned about the results, it does not mean ignoring them, but it means that our mind is not unduly worried with them, they might just be taken as feedback. It can be compared with measurement of temperature when we are heating something with fire. each measurement tells us how much of the target temperature we have achieved, and how long the fire needs to keep burning to achieve the target temperature.

Let us understand how emotional maturity may make difference to our governments, including both politicians and civil servants. they too need to be emotionally mature as they regularly interact with citizens, who are actually getting service from them. For example an empathetic police officer will serve public better than otherwise, as when people go to police, they are in trouble and they need an empathetic ear rather than a bullying guy. So it becomes important that selection and incentives for police are designed in a way that they are focused in learning how to be emotionally mature and empathetic. Similarly politicians and other public servants should also be more mature as they have to interact with the public or manage those who will be finally interacting with the citizens.

We need to figure out ways to incentivise people so that the entire society focuses their energy on being emotionally mature. It becomes important that we as a society value more the richness of mind rather than richness of money. IF we value money alone, then we insentivize people to target their energy to get more money at any cost. In this regard role of media including literature, TV, news paper and magazines is very important, as they build aspirations of people in general. We should target to structure our organizations in such a way that people with relevant skills core to the success of the organization and highest levels of emotional maturity should drive the overall operations of the organizations.

Careful analysis of prevailing problems in our society including the workplace, would lead to the conclusion that higher levels of emotional maturity may be the solution.