I'm really interested in hearing more about this, especially when it comes to software development in cities like Beijing and Shenzen. The stories make it seem like China's developer culture is really harsh, almost absurd in the intensity level and hours worked. Another question is regarding the economic position of developers, here in the US it seems like a path way to a solid upper middle class existence, is it the…
Ask HN: How is software development different in China and India?
31–40 of 141 posts
Re: Ask HN: How is software development different in China and India?
#32(1) (Too far removed) Engineers in India / China mostly work on projects meant for Western markets. They do not always understand the problems that the project is trying to solve. They rarely get to see it work in the wild.
They can't feel proud of creating something they will never see in action. If the project is a huge success, the engineers who created it will almost never be rewarded.
Under these circumstances, it is hard to care.
(2) (Culture) The culture prioritizes seniority over performance. Manager is always right. If you are a 10x engineer and your manager is mediocre but always right, good luck navigating the potential issues.
(3) (Wrong incentives) Most software engineers work for outsourcing companies. These companies get paid for delivering projects. Size of project matters. The incentive is to inflate the projects and create as much work as possible, maintainability be damned.
Re: Ask HN: How is software development different in China and India?
#33In those counties, hierarchical management tends to be the norm. Managers have much more power, and there isn’t the equivalent of these rockstar 10x engineers we see in the US. Respecting the hierarchy and the process of governing employees can be much more important than delivering a brilliant feature.
> isn’t the equivalent of these rockstar 10x engineers Wait, is the “rockstar 10x engineer” a thing in real life? I get that people can be highly knowledgeable in a certain area or familiar with certain tools or highly effective at cutting to the core important details of a problem and making it clearer.
For the 10xer, it usually isn't that they do 10x more work, it's that they know how to make their org do 1/10th the work and get essentially the same results. They pay attention to business requirements and if you spot a senior engineer being listened to very closely by the people who make business requirements you've got reasonable odds of having found one.
The other type is the person who has an esoteric skill that lets you advance your business objectives by 10x-- for example, the optimization engineer who figures out how to cut server costs by 90% or whatever. These folks are usually viewed as wizards by other engineers. If you find an engineer being consistently handed all the 'crunchy' problems you've got a good candidate for this type, and again they aren't that rare.
Very, very rarely the two are the same person. If you ever work with one you'll probably know it pretty quickly, but odds are low.
Re: Ask HN: How is software development different in China and India?
#34There is one thing I'm completely sure about. Code quality is an order of magnitude worse. I'm not really sure why, but that's how it is. With a few exceptions, the norm is to get a shit show every time something is outsourced to a team in India or China.
Re: Ask HN: How is software development different in China and India?
#35I'm really interested in hearing more about this, especially when it comes to software development in cities like Beijing and Shenzen. The stories make it seem like China's developer culture is really harsh, almost absurd in the intensity level and hours worked. Another question is regarding the economic position of developers, here in the US it seems like a path way to a solid upper middle class existence, is it the…
Well,indeed ,developer have better odds of getting rich. but software engineering is a dead-end career,many programmers find that their employacility starts to decline at about age 35.
Re: Ask HN: How is software development different in China and India?
#36I'm really interested in hearing more about this, especially when it comes to software development in cities like Beijing and Shenzen. The stories make it seem like China's developer culture is really harsh, almost absurd in the intensity level and hours worked. Another question is regarding the economic position of developers, here in the US it seems like a path way to a solid upper middle class existence, is it the…
One of the reason that they need to work long hours is because they need to constantly change requirements to cater to market demand. The competition is always fierce in a country with 1.4 billion population. If your competitor come out with a good feature that you can't duplicate in a few days, you bleed out user base really fast. IP laws are hard to enforce here, companies copying each other all the time. Tech giants like Baidu/Tencent have extremely low bar of integrity. If you can't grow you user base to the extent that it's cheaper to just buy you out. Those big boys will just copy your product and promote the shit out of it in a few months. You won't stand a chance against them with the uneven playground. On top of that, poor planning and the fact that PM often come from non-technical background definitely doesn't help either.
Because of the demanding hours, developers are expected to change career path when they pass 30. It's really hard to keep up with the pressure when you have a family. As a result, coding is not seen as a craft but rather a mere part of a feature development process. Quality is generally considered less important than feature completion. Copy pasta code is prevalant among smaller startups because they would rather spend money on marketing rather than on good developers. Users are to be blamed for this as well. Regular Joe's care more about features and who's advertising for your product(hiring celebrities to promote apps/websites are a common thing in China) rather than how polished and well thought your product is. These are definitely not issues unique to Chinese companies, but it's just much worse.
Saying all this, just like in western countries, if you know your stuff, you will be paid very well. Big companies like Alibaba/Tencent/Baidu can usually pay 50k USD or more per year for new grads. Not Silicon Valley good, but will definitely put you in middle class in China.
Re: Ask HN: How is software development different in China and India?
#37There is one thing I'm completely sure about. Code quality is an order of magnitude worse. I'm not really sure why, but that's how it is. With a few exceptions, the norm is to get a shit show every time something is outsourced to a team in India or China.
The reason is simple. They don't 'care'. They don't get rewarded for writing great code. They are not responsible for maintaining it. They don't get to see it work in the wild. Most probably, they don't even understand the problems that the project is trying to solve. It is simply very hard to 'care' under the circumstances outlined above. And it is very hard to write quality code when they don't care.
Re: Ask HN: How is software development different in China and India?
#38I'll summarize my experiences. (1) (Too far removed) Engineers in India / China mostly work on projects meant for Western markets. They do not always understand the problems that the project is trying to solve. They rarely get to see it work in the wild. They can't feel proud of creating something they will never see in action. If the project is a huge success, the engineers who created it will almost never be reward…
Re: Ask HN: How is software development different in China and India?
#39Earlier quoted context omitted.
The reason is simple. They don't 'care'. They don't get rewarded for writing great code. They are not responsible for maintaining it. They don't get to see it work in the wild. Most probably, they don't even understand the problems that the project is trying to solve. It is simply very hard to 'care' under the circumstances outlined above. And it is very hard to write quality code when they don't care.
It happens even when they are part of an internal company office and not a contract shop.
Absolute numbers, not relative. Discount team doesn't really need to care about your problems.
Re: Ask HN: How is software development different in China and India?
#40IMHO the big cultural difference between the sub continent and the US is an emphasis on a particular notion of being “practical” over what I would call a particular notion of being “smart.” I assume you are familiar with the particular notion of being smart. You are quick to think of solutions, the solutions are supposed to be novel, you have particular cultural knowledge, detailed opinions and a nerd sense of humor.…
How does this relate to maintenance? Whether code is practical or not is not a black and white issue, and a solution that "works" today - meets all specs, generally bug-free - doesn't mean it's maintainable. In fact, most of the code I've dealt with from people who basically only value the metric of "does it work?" completely fails at being maintainable. What I mean by this is as soon as you start trying to add/chang…
I might describe an admin interface in terms of what it controls but implicitly I want large choice sets to have search functionality and dates to have calendars and so on.
A large choice set implemented as a massive drop down technically works but I don’t have to explain why it’s just wrong. The “practical” programmer may say hey it works and let’s move on. The “clever” programmer wants to impress with a new widget that is intuitive to use. In this particular case (interface design) I’d prefer the clever coder over the practical one.