Time was 1.30AM, it was sunday. some tamil song was goin on my ipod. next to me, my sleeping baby's face was glowin on the laptop light, my wife slightly turned and told for 5th time, "Sojho praachu...." and again slept.
I was goin through line by by line on the screen, tryin to match the data in the screen.found 24th mismatch in the data. my temperament was goin down. but drunk water and continued the work.after half an hour, i had completed the work. so for found 29 issues.i was totaly upset with that.
I was testing the reports that were supposed to be delivered to business on monday for a User acceptance testing. Due to heavy work pressure, i was not able to review it during the weekdays. But i dont want to deliver it without reviewing it. Last time when the similar reports were given to business, they found similar issues and my business head called the reports as SHIT and told that they cannot use it.
I wrote the mail to the offshore team by listing the key issues and attached the defects, finally told in the mail saying "I was not happy with the way work was done".
Closed the laptop, stopped the ipod and was trying to sleep. Asusual my brain was started thinking.
Why these people are not able to identify the defects on the work that they do? Dont they perform any testing on the work that they do? When any project plan is done why we provide efforts for the testing (different forms of testing)? does the person who develops something really understood what he is doing?? and so on....
I am sure whoever working in the software world has these questions. Do we really worry about the answers.
I do accept that everybody is human and we are all prone to make mistakes. But we are human who must learn from the mistakes. If a person commits a same mistake for third time, what can be done??? In reality if a person writes a program, he cannot find all the defects in his program. It is due to human psychology when a person does something he will say/see that everything is correct. It is necessary that a person work needs to be reviewed/tested by other person. Basically we are all good in finding defects on others. But when it comes for job, then the review/testing needs to be more productive from delivery perspective.
My question here is, why people are reluctant on performing the review/testing? The present trend of the software industry is more to do with delegation than getting committed to the work. If a manager is responsible for a delivery of a project, he delegates it to his team member who could be a Lead for set of deliveries. In turn he is delivering it to another member of the team, who is actually performing the activity. Now we are in the situation where a person who develops the program need to review and test the code. Now tell me how can you deliver a program without defects. Why the people who delegates the work, are not interested in knowing that whether the work is completed as expected or not. What the person is doing after delegating it? If he delegates all his work then what for is he being paid?
If you see the software industries nature, no one will have work for all the 12 months. Max of 3-4 months in a year they will have work to do. This 3-4 months also spreaded across the year, which means in the month of february you will have 2-3 weeks of stressful work, after that you might get work only in May month :-) Dont say that it is not like that. Show me one project in the software industry which has the work for continuos 6 months :-) But people are not ready to perform their job even for these 3-4 months.
I feel that this industry made the people to think that whether a person works or not, he will be getting the salary by month end. Also year end appraisal he will get the average or above average rating, so persons' bonus wont affect much. If you continue in the system for 4-5 years (if one at onsite then the years will be 5-6 years), without adding much value, organization will work on moving that person to next level (u can call it as promotion). If nothing works for a person he will jump to next company with 10-50% hike. So, the purpose of getting job is done (getting money), without doing much.
You can ask me one question, even though these many issues are there, still India is hot market for offshoring. how can it be? The answer is, when a proposal submitted to a business, it will be reviewed/re framed for atleat 50 times by 52 people. So, the chance of mistakes on those deliveries are very meagre. So, all companies get the project. When these projects moved in to delivery perspective, there starts the issue.
Now again you will say that, there is a PROCESS SYSTEM for each organization to take care of these deliveries..... what they really do???
hmmmmm... better i will stop here and will write the rest in my next blog....
you just spoke (rather wrote) my mind!!
ReplyDelete