There were challenges - The communications needed extra effort, and the results were not as good when they were given autonomy over their work. They also were not happy being on a project long-term - they always were looking for their next promotion. Which means it was difficult to get a true senior-level talent on the team, because the better someone is... the quicker they move on to something else.
Ultimately, my answer is yes, I am willing to hire people no matter where they come from -- but I'd be far more inclined to hire someone who has already spent a couple years working in the USA, so they have a better understanding of both how we communicate, and our business culture.
So if a company do not offer an option for overseas job sooner or later the person will try to move to an outfit which promises them for some overseas job.
I had better success with teams from Ukraine, Poland and Europe in general compared to Indian teams and costed about the same for finished project. For detail and innovative work the EU team performed n general much better than Indian team. In Asia my Vietnamese staff got a team from Vietnam and quality was also very good, especially with Ruby on rails, C# and are more stable than the team in India. The only thing favouring India is its large population, but still quality matters over quantity and when it comes to quality USA, EU perform better as the culture of quality is ingrained. In India people have to do Jugaad from the very beginning so most find shortcuts to do things especially in code they copy/paste by googling and work based on continuous trial/error without figuring out fundamentals on how it worked (there are brilliant people from India in my team just few though and hard to find). For mobile development especially iOS and swift teams from China did better, but still for long term the quality of EU and US teams in code is better.
I lived and worked for one of the big offshoring companies in Karnataka and also the US in my 20s. I'm glad I had the experience to do so, and, as an American, I was never treated so well in another country (I've also lived in the EU several times).
But the whole experience really showed me that it had nothing to do with diversity, cultural exchange, getting the 'best and brightest, nor all the other bullshit that executives and lobbyists use to push offshoring and unlimited visas for foreign workers. It is about wage arbitrage, screwing over US workers while enriching management and shareholders, and ignoring a company's responsibility to pay back the society which provides them the environment they use to create a profitable business.
It is very short-term thinking, and has probably had more to do with the growing inequality between the 0.1% and the rest of us than anything else.
The H1B and other visas, along with offshoring and 'global employees' is way more supported on HN than it would be on any other US based tech site, and that's because HN has way more wanna-be Zuckerburgs and Bezos, and less 50 year old System Admins who've had the unfortunate experience of training their own replacements from India on H1b visas, right before being fired themselves.
I disagree. The growing wage inequality between the rich and poor has many other factors. Tech companies are just one small part of it. Before 2004, most of these big techs did not even exist. But wage gap has been increasing for almost last 45 years or so in the US if you look at the data. Take Walmart for example. They employ plenty of Americans but look at the shit wages they pay. They can still get away with it because our politicians have tipped the scale heavily in favor of large corporations. Visa or not, large corporations can get away with almost anything because they are "too big to fail".
"ignoring a company's responsibility to pay back the society"
I agree with you on moral grounds but that is not how capitalism works. A private corporation's highest priority is to serve its shareholders and executives, period. It does not care about paying back to society. Should they care ? Yes I think so. But by definition of capitalism, they are not obligated to. Unless we change the thinking and mindset, it won't happen. Offshoring/tech visas are again a small portion of it and gets blamed way more than it should.
I didn't mean just one specific visa, e.g. H1B or any other. I mean that globalization has allowed large companies to play all sorts of games like moving their manufacturing and service centers to the lowest wages countries, their headquarters to tax shelters like Ireland or the Caymans, and lobbied laws to ensure a never-ending supply of foreign workers and recently immigrated citizens to push wages for the jobs that can't be moved.
Meanwhile, employees can't just move to some country to take advantage of lower COL, or declare their 'official' residence in a tax shelter. We can't even import drugs from Canada or pay the same price for digital goods like Steam games offered to low wage nations.
> I agree with you on moral grounds but that is not how capitalism works.
There is no strict rule that says capitalist economies can't enforce equal playing fields for capital and labor. If the US or any other high wage country weren't beholden to the wealthy, they could easily pass laws that forced companies to pay tariffs for any goods and services developed in countries without similar labor laws, environmental protections, and even tax rates.
Just as important as skill is productivity. And both are more difficult to access remotely.
Credentials have limited substance in the US labor market. In India they have even less --- in my experience.
There is no way to sugar coat this --- India has a credibility deficit in my opinion which translates into additional management oversight required.
Note that the same devs are able to compete with their US peers in companies like Google, MS etc. who have local presence.
The real question is, what are companies in India willing to do to gain credibility? Assembling a "warm body shop" doesn't add much.
Pick a problem space to specialize in, assemble a competent team and develop an open source app for it. Then use this as "proof of work" for marketing purposes.
You undoubtedly know Indian culture better than me --- what do you think is the most likely response to this sort of selection process?
Let me show the perspective of an Indian engineer. I don't want to work for remotely for a team with half a day of time zone difference. India has tons of interesting startups doing exciting work.
Most of the bright engineers are happy with the jobs or have their own network of other bright engineers to help with job hunting. Very few good engineers sign for remote work.
Of course, the exception are people that come through the network, not through a "normal" application process.
The mentality of 'gaming the system' is deep rooted in education system here, probably because education is so rote-oriented, mechanical and namesake.
[1] I would have difficulty believing current generation of IIT students would be any good either. These days the entrance process for IITs has become pretty game-able and people with money and time do that.
This means we have over ten offices all over the world.
There is at least one office in India. It used to have many engineers, now it has few.
The reasons: Engineers in India have this culture that values position more than skills. They think they must work only three years as developers and move to management as soon as they can, otherwise they are wasting time, or they think they are a professional failure.
Now development is mostly done in Europe.
I am an Indian and to be honest, the hierarchical culture is horrible. People misattribute it to caste system but it is much much more than that. We aren't actually expected to straightforwardly say the professor / senior / elders are wrong.
Companies reacted by promoting toadies to be managers with good salaries and paid little to the engineers who did all of the work.
Gate keeping by said managers also helps with miscommunication. Then came the MBA rush too. If only they focused on paying people who did a good job, instead of paying per head/degree/title.
When searching for equally brilliant developers in India itself, I would have to somehow reproduce the effect of this self-selection to get the same wonderful results.
Same applies to a few other countries from which I've seen brilliant colleagues, such as Russia, China, or Turkey.
I work on a globally distributed team currently. It is exceptionally difficult to maintain cohesiveness as a team given that there are 0 hours per day that we are all online. What has ended up happening is that we have virtually fragmented into 3 separate teams with our own products. For instance, my team members in Asia are working on a product that I can't effectively support because my shift doesn't overlap. If someone asks me a question about that app, which my team is supposed to support, I have to go start reading source code. Lacking documentation is also an issue there, but that's nearly a universal problem.
Remote working tools are the hot new thing, but nothing effectively solves the timezone issue. Sure, we have async communication, but unless someone is logging in after hours (which I would heavily discourage), you only get one exchange (i.e. an email or Slack message) per day. That's a painfully slow way to collaborate.
That being said, there are roles where the time difference doesn't matter, and is advantageous. NOC and helpdesk (if helpdesk is 24 hours) are well suited to a "follow the sun" model. The team communication seems largely limited to passing off info about incidents, with very occasional full group meetings to give new policy info. They just aren't the prestigious roles typically associated with SV.
As mentioned below, there are political reasons you might not want to this. And, there are some logistical hurdles in terms of local regulations which, in my experience, can be overcome and plenty of companies have shown that is the case.
So, to answer your question specifically, the reason to compete for talent in Silicon Valley/locally is exactly what you mentioned: the challenges due to different time zones.
Engineering is inherently a collaborative discipline despite the fact that much of the work is done in a solitary fashion.
Each degree of separation makes collaboration harder. The first degree is when you are not sitting next to your collaborators. And it goes on from there: perhaps when the are on another floor, or even another building, in another city, country, timezone, etc.
The most distance you add to the equation, the harder collaboration becomes.
It doesn't need to be a time zone in the US.
Why are people constantly threatening us with things that happened 20 years ago? Especially when we've been buried in hysteria over it for decades.
I think the biggest challenge is finding the right people that meet your level of expectations. This is a challenge no matter where the person is located.
In a way you are right, you may need to offer a premium.
Helping companies offshore work destroys local jobs, depresses salaries and helps the rich get all the richer at a time where they've already taken a disproportionate amount of the gains from the increases in productivity since the 70s and in that time, as the panama papers et al. have shown, have done all they can to hide those profits from the societies that generated them.
I'm also pretty staunchly anti-globalism so it would make a hypocrite of me if I did.
As a hiring manager, a large part of my filtering of candidate resumes / applications is focused on being able to validate their credentials e.g. who they've worked for, where they were educated and how they did there, any repos / sideprojects etc. and make my opinion based on the composite.
If I can't easily validate those credentials then I move on. India has a reputation for spinning up "colleges" to pump out "engineers"[0], to the point where they now recognize the issue caused and are trying to put further efforts on hold [1], and so assessing the educational credentials of a candidate who has not explicitly attended IIT becomes a minefield.
Validating non-local experience is a similar minefield. Instead of recognizing previous employers and having some idea of the work they do and the quality of it, one has to start googling the companies, diving into websites / glassdoor / etc. to find out what calibre they are. Another point against hiring globally for me.
Overall, I would be no more hesitant about hiring Indians in India than I would anyone else in a foreign country with a resume that is difficult to validate, but it's not something I will ever support as I believe in creating local jobs and supporting the local society and economy wherever possible.
[0] https://restofworld.org/2020/india-engineering-degree/
[1] https://www.theweek.in/news/sci-tech/2020/02/14/AICTE-No-new...
Western companies did make a big mistake in not embracing the large talent pool in India early enough for more cutting edge R&D or engineering work. This has worked to harm both sides.
Now it has lost the competitive edge to Huawei which has access to a large and cheap pool of talent. While neither Huawei or Ericsson work on essential/Core R&D in India,
Huawei has a larger presence in India than Ericsson which just runs back office jobs and backend SW development.
India is Ericsson's largest and most promising future market and has been there for 100 years but has always lacked the commitment, thanks to "misplaced nationalism". While I am suspicious of Huawei and China in general, I am happy that Ericsson has competition.
Or as I have recently taken to call it, geeksforgeeks culture.