Hey Hey Every One - Here I am to confess - Do you know how It feels like to the Bad Indian Coder and reading such articles every now and then? I am the Bad Indian Coder.
I have made engineers at client company , literally smack their head due to frustration.
Yes , I write bad code.
I am sorry Mr. DHh,JDM,SPK, and many others.
If you think why I do not want to learn the stuff which would make me perform well? Let me tell you how the system works.
There are a set of outsourcing companies - let us call them the the {o1,o2,o3,o4,o5.....} There are a lot of companies in USA who want to outsource work to INDIA.{u1,u2,u3,u4,u5,.......}
So , after a lot of negotiation based on skill set of labors ,labor costs,billing rates,legal agreement - A company from U chooses a company from O. WLOG, let's call them u and o.
You know what , even before you see the bad code , the foundation has already been laid for bad experience - both for engineers at u and engineers at o.
Why?
You see the outsourcing companies o1,o2,o3,o4,o5 are run by very good , very talented , very ambitious people. For example: Narayan Murty , Ajeem Premji,Subroto Bagchi .
These people pay themselves a lot. I mean a lot. Also , these people cannot commit to a branch. These CEO/Co Founders have their team of around 500 people who are quite bright as claimed by their academic backgrounds , have very good degree in their resume and these people are also paid a lot - I mean lots.
What do these people do? They do the process I described above of finding some u company.
Once the project starts , what does the company does?
They hire developers(you can replace developers with testers,QA guys,coders,donkeys, - whatever pleases you)
<<They actually do not hire , they have a pool of people on bench who are showed as the labor in the negotiation process>>
The u company is charged something like ~20 dollars per hour per engineer working at the o company. Have you ever wondered how much the the developer/tester/qa guy/coder/engineer gets at the end? I understand that , since you are paying ~20 dollars per hour and 20 dollars/HOUR as per Indian Standards is a LOT . LOTS.
But the end developer/engineer/tester/QA guy/coder gets NO MORE THAN 18 DOLLARS PER DAY. I get 10 DOLLARS PER DAY.
The company o charges from the u company much much more than what my BODY EARNS for the o company.
Where does the rest of money go ?
It goes to pay the CEO and the team of sales and so called Strategy team.(AVP,VP,consultants -you name them - these are not billable people).
All of these have one thing in common -
They have very good degree on their resume.(Bachelor from Elite Indian School , then Masters/MBA from an elite University in USA).
I do not have such a degree.
I cannot leave job. No school in USA would accept me because a) I do not have an elite degree on my resume. b)If I write GRE exam (That GRE exam fee is half of my month's salary) I would not be able to take care of some people I care about.
c)If you read b , then you might imagine I cannot afford any school without 100% scholarship.
How my college went?
Yes , Officially I did went to college for a computer science degree.
But in my college 1)No lab sessions were held for 4 years. 2)The questions that would be asked in exam were like - what is an os , write a short note on file systems , why you need synchronization- The same set of questions were asked every year and every other year. We were given a set of question banks and asked to memorize the exact same answers.
Little Did I know that memorization without understanding is cyanide for brain.
Somehow after college ,after so much struggle I did end up at the job.
Now in the current scenario-
Why should I learn APIS for the code which is proprietary to the u company and train myself to become a ninja bug fixer for muti threaded applications?
Why should I learn the debugger developed by the u company which would make me fast and make me deliver results on time?
Why should I learn the language I do not like?
Why should not I learn The things I like from moocs , which would make me get a real job.
Yes, I write bad code, I do not care how much the client engineer rants about my code, or how much pain in the ass my code is for the u company.
You , the u company never outsource the design/interesting/algorithm stuff for cheap . I know we would be terrible at that too , but at least we would learn some stuff.
I am paid just 10 dollars per day.. I did not study in an elite college - which means that people who studied at elite college would use me as a whore to get richer .
The Companies in outsourcing business are not run by entrepreneurs(even though they like themselves to be called as such) , the o companies are nothing put pimps.
I am the whore. No , I am not depressed.
Please stop blaming the labor , stop blaming the awful code.
Please stop outsourcing all together.
If you want to do outsourcing , please I beg you all the people who want to outsource , I beg you - PLEASE FIND HOW MUCH IS THE END DEVELOPER IS GETTING PAID.
This is not a PART OF CONTRACT - The contract entails that the Company in USA will have no say on the salary of the Engineer in India - the company will just pay as hours.
There has been a lot inflation in the last 10 years, thanks to the stupid Ghandhi - Manmohanh -2g scams, coal scams,.
Prices have increased 3 times in 4 years of food items.
But Wipro/Infosys/TCS Paid $330 per month then and now also pay the same .
On every year , at end they give hikes of just 6%.
But , please do that once.
If I were getting 40 dollars per day , I would have worked hard , day and night and at least managed to deliver respectable code.
But , I am not bothered about your deadlines , or your your escalations.
I am not bothered as long as I am not getting money to buy at least one good thing for people I care about per month.
It's almost the same system in all the u1,o1,u2,o2,u3,o3,u5,o5 companies.