Sunday, 27 March 2011

What will happen (contd..)...????

Last week i was getting mixed response on the earlier blog. But i was quite happy bcoz the main purpose started writing the blog is to tell my views. I use this blogger as a mirror and Prasanna is talking to himself (yeahhhh hoooo... the reason behind the name of my blog.... :-))

Comin back to the point where i stopped....

Process is a good word that can be used for any of the work that you do. If anything that needs to be repeated, then people will say "lets have a 'PROCESS' here, to make sure that we are not making any mistakes". It is well implemented manufacturing industries with the help of various tool/methods (six sigma/kaizen method). If you had read Jack welch's biography, then you can really feel how important a process for an organization (for those who dont know Jack, hez the person who was giving the new face for GE, was CEO for GE for about 2 decades).

Now coming to process in our industries. All the companies are having a tool to make sure that all the project management related activities are tracked. These are developed by set of really good people who are expert in process of software world.But when it comes to day to day implementation, our delivery specific managers simply delegates it to the team. So, it will be on the hands of team member who is really doing the development. Look at this, a process which is created by set of experts, is being directly used by developers. Now tell me what will happen here. Whether he will work on the development or work on the process. Why the managers/leads are not ready to understand these process and try to explain to the team memebers how exactly they can be used.

On the other hand, the team who are in charge for ensuring the quality will get in to the delivery to review the activities/deliveries, to check whether the projects are as per milestones defined. These people (another team member of other project :-)) dont know much about the requirements, developments, so they will have defined static questions/checkpoints. Like if a document is having the proper formatting, whether a document is as per the standards.If it is there then the project will be considered as a project that adheres the process.

I am not sure how this helps in meeting the business requirement. To my understanding all the technical members work for 2 set of people. One is the external business and other one is internal business (process team).

All the technical team members are recruited for technical work, the leads are recruited for technical and process work, and the managers are recruited for process and delivery work. Actually some of the managers are recruited bcoz they have PMP certification. But end of the day, leads and managers delegates everything to team members, who are mostly doesnt have the resistance and doesnt say NO. Bcoz all these team members are mostly toppers in their college and school days. These toppers have a simple attitude, that whatever they do is correct, bcoz they studied and wrote exams, and as per the exam results they are the toppers.Companies recruiting them bcoz they are toppers. So, when a task(s) assigned to them they will think that they can complete the task(s) without issues. But in reality they cannot perform it considering the real work involved in it ( i mean to say perform the development and perform the process work). Slowly they will start to compare their friends, they may be doing good in some companies which leads them to think that they are overloaded in this company. Now another victim is getting ready for the hopping of jobs :-)

I understand what is your question here. What i am trying to say here.....

My point is simple, let the people do their work!!! Dont delegate anything and everything. Everyone is being paid for the work that they are expected to perform.Have a simple processes in place (which can be inducted in to your big orgranizational level process defined by experts). Define that process (eg: perform review for each delivery, perform testing on each delivery with a senior person of the team), train the team for these processes, implement the processes, review the processes periodically, enhance/change the process based on the situation.

But Most of the deliveries are not happening like this, so each project has one or two person(s) who are burning their midnight oil for the successful delivery. Bcoz the system will be ready to share the success of anything, but if it is a failure then there can be only one person to receive it at the end :-) :-)

Meanwhile on the delivery that i was working, the UAT was successful with just 2 defects.

Hey look at this, even i am not good in testing, i still missed something during my testing:-) :-)

So, what do you say??? Now read my blog's title!!!!

Saturday, 19 March 2011

What will happen...

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....