I have been working for 2 years now on 2 projects that were brought back from outsourcing. I must say what a disaster. It has taken us almost the entire 2 years to get the project code maintainable. From what I have seen from outsourced code is a fundamental lack of understanding of programming the languages (one project C++, the other Java).
I fail to understand the reasons that most companies choose to outsource. The company I work for was paying $3.7million per year to outsource these projects. After bringing the projects back in they are spending less than $800k per year to maintain 6 developers. Since insourcing the product has become more stable and feature rich. In my opinion outsourcing is the kiss of death for a software project.
>>"Fundamental lack of understanding of programming the languages (one project C++, the other Java)"
99.9% of the time , I doubt if engineering has a say - who takes the project. The failure of the project according to me , is when biz guys decide which firm/person gets the project depending on the cost !
I agree, I think that the problem is the Corp VP's making uninformed decisions.
But when you see Java code like this:
StringBuffer buffer = new StringBuffer();
if(buffer == null){
//do something, in most cases i have seen return;
}
The problem here is in Java new will never return null. One of the worst ones I saw was a point system for exception handling that most of the time crashed the entire app. This is only a simple example of what I have seen. When the entire application is spattered with code like that performance takes a major hit.
My assumption is that the outsourcing company took a programmer that knew C++ and said you now write JAVA. Further reinforcing your point!
[+] [-] Cinfraco|16 years ago|reply
My 2 cents on outsourcing:
I have been working for 2 years now on 2 projects that were brought back from outsourcing. I must say what a disaster. It has taken us almost the entire 2 years to get the project code maintainable. From what I have seen from outsourced code is a fundamental lack of understanding of programming the languages (one project C++, the other Java).
I fail to understand the reasons that most companies choose to outsource. The company I work for was paying $3.7million per year to outsource these projects. After bringing the projects back in they are spending less than $800k per year to maintain 6 developers. Since insourcing the product has become more stable and feature rich. In my opinion outsourcing is the kiss of death for a software project.
[+] [-] UsNThem|16 years ago|reply
99.9% of the time , I doubt if engineering has a say - who takes the project. The failure of the project according to me , is when biz guys decide which firm/person gets the project depending on the cost !
[+] [-] Cinfraco|16 years ago|reply
But when you see Java code like this:
StringBuffer buffer = new StringBuffer();
if(buffer == null){
}The problem here is in Java new will never return null. One of the worst ones I saw was a point system for exception handling that most of the time crashed the entire app. This is only a simple example of what I have seen. When the entire application is spattered with code like that performance takes a major hit.
My assumption is that the outsourcing company took a programmer that knew C++ and said you now write JAVA. Further reinforcing your point!
[+] [-] UsNThem|16 years ago|reply