Showing posts with label software. Show all posts
Showing posts with label software. Show all posts

Friday, January 13, 2012

Software Development Process....

Software Development Process in IT Services company 

I do not know how many will agree, but this is what I think!

1) The project manager along with onsite co-ordinator gathers overall requirements from the client.

2) Using some models like COCOMO, the duration for development will be estimated to be around 12 months. ( Note that COCOMO relies heavily of previous projects delivered by the firm) But business managers inform the client that the project will be delivered in 10 months (to prevent competitors from grabbing the project away.)

3) Delivery managers splits the project into 2 parts – 1 to be developed at unit A of the company, and other at unit B.

4) The project managers at Unit A and B will be having an internal competition and so each will try to deliver the project ahead of the other, so givens a time of 9 months to his unit to complete the job!

5) The project begins at both units, and Software Engineers start the development.

6) Since the software service industry is heavily 'process-oriented', the developers are required to submit their 'activity reports' every week. This report will contain, among other things, the duration spend on each specific activity within the software cycle (like designing,test case preparation, reviews,coding etc). 

7) Developers were told this by their managers. “This process is estimated to take 10 hours, so if you want to get a good appraisal next time (Out-performer), you should finish it in 9 hours or less!”. (The original estimate would be definitely above 12 or more hours!)

8) The developers works hard but sees that it is going to take much more than 10 hours. But to get that 'Out-Performer' tag, he decides to work extra hours every day, but while submitting the 'activity report', he says the job was completed in '9 hours', (it actually took 15+ hours ) 

9) Developers themselves will be doing a lot of peer review and testing, and they are supposed to enter the defect information found in deliverable in some internal tracking tool. This internal repository is to be used for training purposes and to prevent the same in future. But most developers will not enter the defects found in peer reviews into this system, but informs the peer (usually his/her friend) about this offline. (in person). This 'mutual-help' habit is followed by all developers to prevent their bugs/defects from being recorded in the system.

10) The entire duration of the project will be like this, with developer submitting 'excellent' activity reports. Finally the project is completed and will be delivered to client and everybody is happy.

11)The end-result : Project will be delivered in time. All the internal systems will show that there weren't any defects/bugs at any point of the process and all jobs were completed well before the estimated times!

12)Now, the next project (very much similar to previous one) comes in, and the estimating models will be giving a much shorter duration for this, because the internal systems says these jobs can be done faster than ever thought of!!!!

13) And now the cycle repeats itself, with developers ending up working late nights/weekends and spoiling the good part of their lives.


"The trouble with the rat race is that even if you win, you're still a rat."

Saturday, January 16, 2010

To all young engineering graduates.....

Just thought of giving some idea to young engineering graduates about IT organizations in India, as a lot of them, irrespective of their branch , end up with offers from IT firms.

When I say Indian IT firms I am referring to Indian players like TCS,,Infosys,Wipro,HCL,Mahindra Satyam, services division of IBM India (GBS) , Accenture, CTS ... etc

1) 99% people are absorbed into Software Services businesses. The key difference between a software product company and a software service company is that, service companies serve their clients using tools and technologies developed by product companies.

All technologies/products are made by US giants like Microsoft,Oracle, Apple, Google,...etc
And services firms use these technologies to develop custom applications to their clients.
For eg: Infy,TCS etc works in windows OS developed by MS, to develop a payroll processing application using java/,net (both technologies from USA) , with Oracle as database and deploy the same in servers made by Dell/HP. And in this very process, they make extensive use of VOIP phones made by CISCO and Internet powered by Google and Yahoo!..

So if you are hoping to work in developing high end technology applying engineering skills - aim for companies like Microsoft,Oracle,SAP... etc.. and not on firms which are purely 'service' players.


(An analogy with Automobile industry : The job done is IT service industry is comparable to the work done by a mechanic in a auto garage! Only difference is, your job is white collar and you can work in A/C cubicles with 10 times the salary! )

2) A major portion of the work done by Indian IT firms are maintenance work. The required applications are already developed and deployed by Accenture /IBM/US firms or developed in house, and the maintenance jobs are outsourced to Indian IT firms. Maintenance jobs are not bad at all , and you learn a lot if you work in maintenance projects, but it can be boring for smart engineers! So if you hate working in maintenance projects , consider offer from India IT firms as a last option only!!


3) A good amount of people will be working in support jobs in all these firms. And If you think that you are a high-performer and you wont be put into support jobs - you are damn wrong about it!!


4) Don't expect that you will be put into an area of you interest! Its not uncommon to see Sun certified Java people working in mainframes, embedded systems certified people working in web technology, and people from Computer Science branch with 'n' certifications working as software tester!

5) Don't expect that you will get an onsite opportunity just because you topped in training or your are excellent in technology- onsite is purely business demand based. So you need a lot of luck to get an onsite these days. People doing the job of Database/network administration/monitoring etc have more chances for an onsite.


Although I mentioned that most end in services industry, few get products firm as well. Not only in MS, Google.. but also in Indian firms. Oracle Financial Services (previously called I-Flex Solutions) is a product company, Infosys has a product - Finacle, Sasken - a technology player and not pure services, Subex- telecom products .... Some end up in software division of companies like Siemens, Bosch,Alcatel etc where a lot of high-tech projects await you.

Also all these IT service firms can act as a good place to begin with. There are lot of people who started off their careers with services firms and later got into high tech companies and of course, high salaries!

For people who considers themselves as average, and want to get into some job, Indian IT services is the best choice! You get good respect in society, an 'IT lifestyle' in cities like Bangalore,Hyderabad with plenty of money to hand around with friends.! (gf/bf's as well)

For people who dream bigger, aim for the top shots, like MS,Oracle.. etc.. :)


(
when people come and tell me that "hey I got placed in so and so IT company in India."...

What should my reply be?

If he/she is average type, then obviously , "Congrats! "
For high performers, the reply have to be "Congrats! and Condolences!"
)


Saturday, July 19, 2008

I.T Recession & DOJ!!

Its July now in the year 2008 and most engineering graduates in India who are placed in IT companies are waiting desperately to get the date of joining (DOJ). Orkut scraps, chats , everything contains the word "DOJ"..!

After the tech-bubble of 2001, again this year IT firms are delaying the DOJ. I thought of putting some information regarding the same here!


Why the recession ?? Everyone might have read in newspapers regarding US Subprime Crisis and all. Most people avoid such news because very few have understood the Subprime and other terms!!

U can of course Google it and find out but I will try to put it as simple as possible and explain why all have to wait so long for DOJ!

In simple terms , Subprime loans are loans given to people who do not have a a good loan repayment history & has low income/job . Naturally Subprime loans are riskier and so banks asks for mortgage. (in local language- 'panayam' ) and houses were kept as mortgage mostly.

In US large no: of subprime loans were given last few years. But as interest rates increased monthly installement has also increased and many people didn't pay the installements. At the end banks were forced to foreclosure the loan. ('Japthi cheythu') As more and more people failed to repay, more and more properties were foreclosured. This was accompanied with a sudden fall in real estate and home prices. So banks couldn't get back the money which people owed them, as prices at which homes were sold were much below its estimated prices. Naturally banks suffered from heavy losses. The exact amount of losses is alarming and is estimated to be around 350Billion US Dollar. (1billion us dollar= 4200 crore indian rupees)!!!!!!!!!!!!!!!!!!!!

Big companies like CITIGROUP, Merryl Lynch,Barclays etc suffered huge losses. and this is exactly what we hear as US Financial Crisis or Subprime Crisis!!!


Now how this is related to IT recession??

IT companies in India are mainly service providers. And majority of revenue for them comes from banking & finance sector (BFSI) . BFS companies either delayed or canceled their expansion works and IT budgets, leading to slowdown in IT companies here.

There is another main reason which affected profit of all Indain IT companies. Its nothing but the appreciating Rupee. From 48ruppes per dollar to almost 38rs per dollar will affect the profit of IT companies by a good extent.


I hope now all understood why the looooooong wait for DOJ!!

US Subprime issue leading to slowdown in IT spending coupled with a appreciated rupee is the cause!!

So we can either simple sit down @ home waiting for DOJ to come, or do something useful !!


Some informations to see how worse the matter is -->http://news.bbc.co.uk/1/hi/business/7096845.stm