Back in 2012, after finishing my Masters, I decided to finally buy a car since I was finally making real money in the US and not some chump change that a research assistantship pays you. When I first walked into an auto mall, I was dumbstruck. Here was a street with auto dealerships lined up side by side stretching as far as the eye could see. Dealerships selling everything from the fifteen year old, beat up, barely running $1000 car to a $100000+ price tag Porche. Now why would they all decide to setup shop in the same street next to each other instead of in their own spot in a different street or neighborhood? Then it struck me. Thousands upon thousands of customers would prefer to visit an auto mall where they had the entire spread of cars and brands to choose from. Of course, if you are a crappy dealership, you wont win the business of these customers passing through, but if you play your cards just right, then its not a zero sum game. Customers win because of choice, dealerships sell more cars because of increased foot falls, everybody wins.
Silicon Valley is much the same way. The top notch universities in the area attract talented students. They also attract amazing professors that do cutting edge research. The research attracts companies that want to get research done. The state of the art companies attract the talented students once they graduate for jobs. The flourishing companies churn out industry veterans who decide to leave and start their own companies. These founders need Venture Capital. Venture Capitalists want to make money. The availability of venture capital attracts fledgeling companies. The fledging companies create a market for tech mentors and founders and incubators. This in turn fosters yet more talent and founders and the positive feedback loop goes on and on and on feeding on itself and growing larger and more powerful. Silicon Valley is not the only tech ecosystem in the world. But it is one of the oldest, and largest and therefore the most successful.
If you are old enough, you would know of a time when you wanted to buy a book that you really wanted to read but couldn’t find it in any of the bookstores nearby. Of course, it was available in some other neighborhood far away or in an other city, but there was no way for you to get to it. Now, of course, there is Amazon that makes millions of books available to purchase and read instantly when you want.
There may be thousands of employable engineers in third world countries, but geographical barriers/friction pose much of the same issues in hiring remote engineers. Employing and managing remote teams may be cheaper, but it also takes a lot of effort and time to setup and run.
Its amazing how many different cuisines you can actually try if you are in the Bay Area. Thai, Chinese, South Indian, North Indian, Japanese, Mexican, Greek, Italian, Mediterranean, American, French… the list goes on and on. Your taste palate is exposed with an explosion of flavors that you never knew existed.
The Silicon Valley similarly attracts engineering talent from all over the world. It might seem cliched, but the diversity of people, cultures and races and ethnicities does indeed lead to innovation because of the diversity of viewpoints, ideas and designs that are brought to the table. I personally think that this is a huge part of the Silicon Valley advantage. Hiring engineering talent in an Asian region does not give you the same benefit. For example, if you setup an office in India, they would all be 100% Indian. This does not provide the diversity benefit.
Keeping Core Expertise closer to home
Companies are always worried about their secret sauce getting leaked to competitors. This would lead to a loss of advantage in the market. Keeping the core tech closer to home is therefore a safer option where there is a notion of better control and security of key technologies. This may partially explain why core development projects are seldom handed over to offshore teams and mostly executed in the HQ instead.
Quality of Talent
A lot of hard core companies require skilled labour that require an advanced degree like a Masters or PhD. And America has a number of top notch universities catering to this need. Countries like India and China are lacking in quality graduate programs that is necessary to produce this kind of talent locally. A lot of the engineers from these same countries come to US to get that graduate degree and then stay on because they find high paying jobs in the Silicon Valley where they can put those talents to use. This is again in some sense a lack of an education ecosystem in third world countries.
There is much more that matters to a company than just technical skills. Of course, these skills are valuable, but there is much more to that than simply technical skills.
Software development isn’t just programming. Programming is a large part of it, but just knowing how to code isn’t going to take you very far—especially if you want to make a career out of this vocation.
The idea behind most software development projects is to automate something that is currently manually done in the world, or to create a new automated way to do something that was too difficult to do manually.
So, the simpler question would be that some programmers only know how to write code, but this isn’t enough. I’ve worked for several companies, as a developer and as a manager. And I can tell that companies are looking not only for people who know how to code but that also have:
- People skills
- Soft Skills
- Communication skills
Most of these skills lack in these developers, especially due to cultural differences, language, etc.
I’ve actually done a video which I believe will also be able to tell you a lot more about what I think about this subject:
Software engineers in Silicon Valley are NOT so highly paid. Compare average starting salary for MBA, JD, and MSCS in Silicon Valley. Of those three graduate degrees, I would argue that MSCS is the most challenging curriculum, but the lowest paid.
But okay, lets go with your assertion that Silicon Valley software engineers are highly paid relative to software engineers in Asia, and try to figure out why. First, the cost of living in Silicon Valley is much higher than most parts of China and India. But there’s a lot more to it than that.
Why do US companies build campuses to cluster all their buildings and employees in one locale, rather than scattering people and buildings all across Silicon Valley? Because there is synergy in teams of smart people working together to solve problems. And there is greater efficiency if you can walk 10 minutes to a meeting in the next building rather than driving across town.
You can hire engineers much cheaper in Asia, but how will you manage them? What projects will they work on? How do you keep their work synchronized with that of your US based engineers? How do you have conference calls with a 12 hour time difference? How is employee turnover compared to US?
The US market for software is the biggest market in the world. Software engineers need not only technical skills but also communication skills and some familiarity with the market that they are developing software for. You don’t get that in China or India.
So being located in Silicon Valley has its advantages. That said, most big US software companies have huge campuses in India. Microsoft has 6000 employees in India, and Google has tens of thousands.