Why hasn't there been more outsourcing of tech jobs to Japan?
All I mostly see is outsourcing to India or insourcing of India via H1B. Google seems to give some fairly low numbers ($57,604 year) on average salary for programmers in Japan.
In addition to the valid reasons mentioned by others here—English ability, labor shortage in Japan, less of a hacker culture, etc.—there is also a difference in attitudes and expectations about employment. Many young Japanese prefer to work as full-time company employees, both for the stability and for the social status. My younger daughter graduated from a Japanese university twelve years ago and has been working as a systems engineer for an IT company in Tokyo ever since. She told me recently that, of the thirty-five people hired at the same time as her, only three or four have left the company. My daughter expects to work there for the rest of her career.
Freelancers here are more likely to prefer working for clients in Japan, too, as there is less hassle about payments and clients may be more reliable. I freelanced as a translator for twenty years in Japan, and over thousands of jobs from dozens of clients I had trouble getting paid only once. In contrast, complaints about nonpaying clients were a constant refrain among translators I knew in the U.S.
That said, in my semiretirement I recently started doing a little consulting work for an IT company in the U.S. Once we got through all the hassle of identity checks and bank transfers, I have been very impressed by the speed and smoothness of their payment system.
India has more than ten times the population of Japan, so all other things being equal you'd expect there to be ten times as many Indian devs than Japanese devs. And all other thing are not equal, and there are probably several factors that skew things even more (English skills, cultural reasons, economical reasons).
Part of it is programmers aren't sexy in Japan like they are in the USA. There is not much of a "hacker culture" in Japan. Programming is just a means to an end in business or technical work, so it's done either by engineers, scientists, and business people as part of their other work, or by staff programmers servicing other business needs -- almost a form of clerical work. It's not a good place to find people who dedicate themselves to programming as a craft in its own right. There are pockets of hobbyists and otaku, but the work culture there doesn't really support that kind of dedication to programming as a calling the way it does in for example the USA, UK, and elsewhere.
A lot of the recent “cheapness” of Japan is due to the drastic drop in value of the yen. Two years ago these workers would cost like 50% more.
Japan also has better worker protections, so hiring and firing is more difficult I imagine than India. One way I’ve heard American firms fire is to force employees to relocate to another Asia office with more lax protections. The employee gets relocation costs covered but if they get fired within a year they have to pay those expenses back. The employee knows they’re just going to get fired so they quit.
On top of that, English is probably not as good. It’s taught in schools but you don’t need it for most jobs.
Indians speak English. Japanese in general do not.
There is also a massive culture gap between Japan and the rest of the world. It's hard to explain if you haven't lived there.
57604 Average Salary is still pretty high. For a little bit more, you could probably outsource to parts of Europe and deal with less cultural/TZ/language barrier issues.
Indian Devs are paid around 7-25k USD depending on various factors, so India is significantly cheaper.
Japan don't even have enough tech workers for themselves and need outsourcing...
Because they have better options than working for US companies as second class citizens.
Singaporeans speak English, with world class education system. Hey don’t they want H1B? Because they have better options at home. Any expats will tell you lives are better in Singapore and Japan than in India.
Occams razor says Indians are better software engineers than most cultures (except americans) because of our free thinking cultural values. I cannot imagine an average Japanese engineer being able to pick up new tools every month. I have worked from people from a lot of cultures to understand this. For instance right now Indian engineers are embracing AI tools much faster.