Having said that I realize that this is a vicious cycle - young developers can write good code, but the market requires them to quickly crank up a lot of code which is just good enough to satisfy customer's quality requirements. In few years this developer is not able to write good code because he basically forgot how to do that.
Want to improve the quality of code from India (any other country for that matter)? Stop outsourcing there :-)
When I learnt my lesson, I thought about it and removed the indirection. Since 2011 I've only hired directly, but still remotely. I explain exactly what quality level is expected and that it's not a rush to finish.
The countries I've hired from still aren't high wages countries and the initial wages paid were the same as in my unsuccessful attempts. The quality output is far higher, and it's been worthwhile re-writing problem code rather than giving up and trashing it.
I don't think it's the country or the wages that are the problem, I think it's the indirection of another manager, plus the use of another company who often stacks (cheap) junior devs up and their only measure of success is whether their clock hours are full at the end of the month. You just can't expect that company's business goals to align with yours, especially when other companies using their services are often very inconsiderate about dropping the contracts with virtually no warning, that makes their planning really hard.
This was easily some of the best code I've seen in years, both of my own and other colleagues. There were some key takeaways I got similar to davidjgraph's points. The company here in the US using this team worked directly with this team - there were not multiple agencies in the middle taking their cut. Additionally, it was the same core team (7? 8 people?) working for more than 2 years - they had a long term sense of commitment to the problem and the project, and it showed. Many outsourcing disasters I've seen are rush jobs by people trying to hit billable hours and move to the next project (well, same for onshore workers, really).
PS: Which is not to say there not a lot of great Indian programmers just it's really hard to write or learn how to write high quality code when programming to an seemingly arbitrary spec. Sill it's a huge country so there is a fair amount of internal demand which is often forgotten about.
The thing with India is there's just a lot more of all types in absolute numbers. The perception problem India has is that the weaker engineers tend to try outsourcing and the strong engineers are snapped up rapidly by big companies who recognize their talent.
If you look at the Google I/O keynote video this year, there are a lot of Indian engineers in high positions presenting. This is where the top dogs are. They're not going to be the ones completing your outsourcing requirements.
The other flip side of this is the companies doing the outsourcing are often as clueless as they percept the engineers to be. They often haven't a clue how to properly document their requirements, they inflict constant scope creep and then give 2 hours notice of the contract ending.
For the record I'm a software engineer in the US, and yes, every experience of outsourcing to India has been bad. I don't think I'm blameless for that.
No one likes this. No one, not even the people who offer this kind of service in this or other sectors. But it's how you make a living.
What kind of logic is it? Are 98% of Indian population software engineers? Why do they need to know about GitHub?
The problem is "They try to act" like they know about software industry, meanwhile when you try to explain them that you are working on some open source project, they refuse to respect your opinion.
I am a programmer. I am not a software Engg. I am actually a Production Engg. However, I am a programmer. I'm a little bit older than you....27.
Let me tell you what I spend my days doing. I sit in a CCD (Cafe Coffe Day) with my best friend from 10:30 - 1 pm and code and work on making a beautiful product. Our product caters to the Indian market. We make a decent amount of money. Enough to allow me to buy my first house and go for vacations every few months.
My problem with your post is your attitude. India is an amazing country to me cause the market is so insanely large that if you capture a niche of a niche of a niche.... you can live a great life. In fact, I will argue, you can have a more beautiful life than you would in countries like the US etc. You will be able to delegate all boring aspects of your life (to maid and cooks and helpers and assistants who are all very cheap because labor is cheap) and just focus on what you want to do. That is the beauty of India. I could go on and on. But, let me assure you, that you are missing out if you think its a bad thing to be a skilled programmer in India.
Its easy to troll on these companies for not offering us the great life in a gift box. But the fact is bulk of the infrastructure, reputation and even the very trend to help build the entire ecosystem was done by these companies.
I am a programmer from India. I somehow prefer programmer over software engineer. I turned 23 on 11th. And for me 22 was complicated enough. Interestingly, I am not from any IIT, NIT or whatever that you mention and neither do I have a job in the big brand firm.
But still I think the situation is somewhat better than what you have mentioned in your post. Maybe its a difference between where we are located but I don't get that much heat anymore as far as job and stuff are related. Also I do not think everyone should care about your open source contributions or code quality, unless by nobody you meant people who code next to you.
Also its great that you finally are doing what you like. It is pretty guaranteed that there would be people out complaining about something in your life even if you were working at some big company. It is difficult enough to be bothered with what we are doing, that we should care about what others thing. ;-)
Oh btw, Happy Birthday!
Yet you use the term "softwares" - learn some grammar first - especially when it comes to your identity as a software engineer. Or are you a 'softwares engineer'?
If you are curious, I studied in Chattisgarh, India.
Your courage, and determination to try to break away from the suffocating conventions around you - I applaud you.
There will always be things that you feel like you should or must be doing when you are 24 or 25 or 65!
Its great that you have found something you enjoy. As you get more experience and explore new avenues, you may find things that interest you more. Be open to change. The peanut gallery will always be there, but the only person you are accountable to is yourself.
The social pressures are a part of the culture, but they are background noise as such and should be treated as much. Focus on what you want to do, and where you are going. The other things will fall into place one way or the other.
"So, where did InfoSys come from? A startup like mine, right?"
Instantly, you have potential
The term "Entrepreneur" here in India is a synonym for "Jobless”
IMHO work quality is severely underrated in India, everything just needs to be done, the end quality does not matter, it should just work, that's enough
I did some bit of work on VWorker (now Freelancer) based out of India and I always got good ratings for my work, never once, I was told that the code I delivered was a shit job.
In short, I think of "Steve Jobs Stanford Commencement Speech" as a modern approach to "Bhagavat Gita".
Needless to say, I'm starting to search now... :/
There's no one to blame except yourselves, Americans (I speculate here). Especially in Bay Area or any other melting pot.
You speak language remotely resembling English? We can understand you without "Say it again, please?" every 10 seconds? THANK YOU VERY MUCH!!!
Only if you know how hard it is to solicit a style/grammar correction from an average IT engineer/manager. Oh, ah, it's so rude to correct someone (even if the person explicitly asks for this). So far I was able to convince only one my friend to correct me (and it wasn't completely free - he is learning Russian and wants the same from me).
I mean, shit, how is this any different from me jumping in and contributing to a Git repo the language of which I haven't mastered? Should I not lose respect when my PR's have syntax errors or use bad practices? Fuck that noise indeed.
Back on topic, happy birthday Mr Jalan!
>>I mean, literally, give me some personal space. I am just (about to be) 24. I have to achieve some things in my life first, I have set some goals.
You know what, go check what has become of people who marry late and have all sort of financial commitments like their daughters marriage or their retirement year or their kids educational fees coming pounding on them just 2 years from their retirement.
There is a reason why people prescribe early marriage, you can be off your responsibilities early. And that ensures you have a peaceful time after your 50's.
>>In India, it's hard for people to believe that a person can be successful by bootstrapping his own business.
So wrong, Stories of successful Marwari's, Gujrati's and People from Kerala are a common place in India. Please don't generalize so much. So people know the truth too, but its not about the truth, Its about safety and fear.
To understand why parents in India prevent their kids from starting their own business, especially those from lower middle class and poor back grounds is the fact that parents slog like dogs their whole life to get their kids into a position where they can secure a decent job. Imagine giving all that away(Decades worth hardwork) and risk it all on a venture which statistically is almost assured to fail.
For the higher middle class and rich kids this is nothing. Because they fall back on father's property and some thick dowry sort of gifts coming in a never ending stream from their father in law to keep them and sustain them in the game.
For some one poor it means game over, and they have start all over again work a few decades and hope their kids don't make the same mistake again.
>>The term "Entrepreneur" here in India is a synonym for "Jobless".
That's because starting up petty grocery stores was the trend if you didn't net a job else where.
>>If you are not employed, then be ready to hear some harsh comments from your relatives
May be for a good reason. If you are 24 and still expecting your dad to support you to buy a tooth brush in the morning. I don't think that's acceptable.
>>98% of Indian Population have not even heard the word "Github" in their entire life, yet everyone acts like they know this stuff
98% of the population in any country haven't heard about Github. Have you heard of the top civil engineering related discussion site? How many times do you visit that site per day?
>>(IMHO work quality is severely underrated in India, everything just needs to be done, the end quality does not matter, it should just work, that's enough
Who told you that? I've worked on some top notch projects here. You get what you want. If your aim is simply to buy a few expensive flats in Bangalore, buy a car, watch movies in a multiplex all weekend and eat out. You might as well play some dirty polities secure a undeserved promotion and travel abroad to fund it.
But there are awesome projects all over the place. You will get them if you look for them.
>>From where you have done your Engineering
Because statistically speaking, someone with an engineering degree generally does better than the one that doesn't.
>>The brand name of the company you work for (Infosys...
I've worked in one such a company, Most of the people who worked with are all doing well. Many have started companies, and many are working public projects of importance.
Do you even know what kind of ecosystem, training, infrastructure and facilities such companies offer. Its next to impossible to match that outside such companies, I was fortunate to have benefited immensely in early parts of my career. If you walk in a gold mine, and worry all about mud, I'm not surprised if you don't find gold ever.
>>Luckily for me, my parents were supportive...
Finally! There are folks in this country whose parents don't have the money to buy them even a pair of slippers throughout their entire 4 years of engineering. I hope you understand why such people make choices they make.