In my last full-on japanese company it was basically impossible to find any developer with more than 3 years experience by accidental design because:
1: No applicants studied computer science in university so they started learning when they joined the company and were assigned a development role.
2: After 3 years they they got promoted to a "manager" level role and stopped doing development. There was no concept of junior developer -> developer -> senior developer progression. If you wanted promotion you went from developer -> manager; it was the same for sysadmins. Their IT and development suffered heavily for it.
A team of 10 "western" style trained senior developers and sysadmins would have been able to do the work of 50 current employees at least for a large overall cost saving even with higher salaries.
Just the way things worked. Japan is indeed very different when it comes to how the workplace works in relation to tech in traditional companies.
Couple of years ago I had to integrate with a newly built api in japan. 2017, and they basically wrote their own web server in Java. Their own xml parsing. It looks like they read the spec for HTML and SOAP and implemented their own variation of it.
It’s the worst integration I’ve ever had to deal with.
If we got a 500 error from their system we had to write an incident report about why our system failed to call theirs. If they tried to call ours and it failed they would call up and we would ask them to “retry the call” and they would ask us to patch the data in our system because they can’t retry.
You get that one who's really damn good at what they do. Just as they are up to speed on your project and working style, they get promoted to manage a group of 10+ engineers.
And then you start again with the next one, hoping that they're as good as the previous one.
There are good people everywhere. You just need to find them, and grow them to where they can shine.
Simple things, like it's better to ask when you don't know than say "yes everything is fine" until it's too late.
Worked pretty well, a few from the team actually ended up immigrating and are still living over here with their families =)
Why do any sort of progression, when you can just have a bunch of skilled people visiting customers to secure contracts, and once projects are started, they can be substituted for an army of juniors? Meanwhile, the seniors go secure more contracts elsewhere.
Basically you get what you pay for. Large consulting companies offer peanuts compared to good software developer salaries. But compared to the salaries you can expect in other fields of engineering if you are an average student (considering the glut of mediocre engineering colleges here)- consulting salaries seem decent.
Create a branch office in India and offer the expected salaries for software engineers and you can find great developers.
Do you have any insight into how this works in Japanese companies that do more traditional engineering? I find it hard to believe that companies like Toyota have no senior engineers.
I don't have any special insight into Toyota outside of some anecdotal stories from friends though.
Although I've seen this title on Teams be given to a 28 year old that didn't seem to be Senior quality, but I'm not much more experienced.
The system isn’t all bad. It’s just that it produces general managers at the expense of functional expertise. (The other extreme where 100% of the org’s entire skill set and network is limited to their own silo rarely works outside of Apple) Balance is needed.
Remeber in large traditional japanese companies you don't apply for a job, you apply for a well-known company and then they assign you a role that may or may not have anything to do with what you did at university.
The company I worked at was not a tech company so very few (none? I never saw any) applicants who studied computer science.
One manager spent 50% of his time keeping an old system he wrote as a developer years earlier from completely falling over because no one else could understand it, byzantine doesn't begin to describe it.
He worked many, many, many hours overtime doing this in addition to his managerly duties but, of course, because this is Japan, he won an award for hardest worker of the year and a trip to Hawaii... which he couldn't take because otherwise the system would fall over.
Even at 181cm you do have to watch your head though.. I've hit my head many times while going up stairs, and for those who don't know stairs are extremely common because many businesses are split up across multiple floors of a narrow building.
On the other hand, don't many western companies outsource IT work as well? Having never worked in US/EU tech industry, I don't see much difference when it comes to outsourcing. (hiring temp engineers is obviously different from outsourcing, but the concept must be the same)
For the rest of the world, or even just the rest of the US, to expect exceptionally high compensation in order to feel respected is unreasonable in my opinion. Software is an incredible tool and I'm glad to still find ways to love it, but as a profession, it's just like any other.
I have felt this way for a while, because I feel we can do a lot more meaningful work within our communities with software than we currently do. But all the developers are instead busy building Nudity in Kettle Reflection algorithms for market place image uploaders while getting rained on by VC money.
The bubbles that did however did incredibly well compared to the rest of the market. And often crushed traditional companies with a traditional view Software and engineers.
> Software is an incredible tool and I'm glad to still find ways to love it, but as a profession, it's just like any other.
The thing is, software scales almost infinitely. For a doctor to double his output, he'd have to put in twice the hours. For a software engineers to double his. But a 10x userbase growth? Happens overnight at some companies. That's where it's different.
Simply becase software development sucks thinking and knowledge from the product/sales/manager silos.
To make things works you have to know much more than many managers do. Effectively you do the digging, the thinking, the analysis, the design - via tooling or via POCs directly, and SDE is the sink who gets everything that other folks didn't think or care.
It's not like Uber driver who drives you where you want. It's more like baby-sitter who also serves like a Virgil, a guide in the hell, and who takes all the risks.
And then you go on describing the average attitude towards software developers I perceived in the Netherlands… :)
There's this societal idea that "working in IT" is a good thing, but there is no distinction in most people's mind between different IT fields. Most people think that software engineers and people installing printers are more alike than similar.
He ended up moving to San Francisco where he's making 20x what he was making in Austria.
You need official certificates to be allowed to work with high voltage. But the program that controls that machine there, well, it can be written by some Germanistics student who can't find a job in his original field (no offense intended. I know several brilliant programmers who never studied. I just want to illustrate the difference).
If you understand this attitude, you will also understand why the general state of cybersecurity in such companies is such a problem.
They outsourced every possible role in software engineering and IT to India to the bare minimum where all that was left were the devs who worked on the firmware for gov related projects and regulatory concerns meant only US citizens could work on it. For the devs that were left, it was an uphill battle for resources and salaries while it felt like Sales and marketing were put on a pedestal when this company’s entire product was our work.
whatever...
I think you'll find that the people who write control software are mostly Electrical Engineers.
Have you used anything digital in Japan? I find the interfaces to be fast, user friendly, and energy dense. Far better quality than what most of the western software people put out. You might need to clarify what you mean by behind - just business culture?
Japan is very very behind in IT/digitalization compared to most western countries. This doesn't just mean it's behind in product portfolio and quality, but that perception of software engineer & managers and still quite behind. The respect that a lot of software engineers enjoys in US/EU is not quite there yet in Japan(and salary often reflect this).
The C-suite usually doesn't have a firm understanding of software/IT world, and instead ends-up hiring a lot of "Scrum-experts/Agile coaches" and hires software engineers from consultancy or recruitment companies for cheap. There's ofc companies that doesn't fall in this category, but for middle-sized companies in Japan (which is the bulk of the economy), this is the true state of things. Middle-men in Japan have therefore been way more encroaching on this, and they have the incentive to not improve the respect/social standing the software engineers have.
"Removing managers" in this article does not mean the same thing as it would in US/EU, conditions are different.