Hacker News new | ask | show | jobs
by Retric 3216 days ago
They both reduce institutional knowlage. This tends to be extremely detrimental in the long term.

Outsourcing software is like burning all the design documentation for hardware your having someone else build. Even something as well known as injection molding tends to work vastly better if you have experienced staff as part of the design process. And software is worse than that because the design process is part of development, so outsourcing means you don't even understand the problem space.

3 comments

Ya.

If I wouldn't pay the consultants in the office across the street to work on my core IT (outsourcing), why would I pay someone separated by oceans, timezones, language, culture... (offshoring)?

While working in healthcare, our corporate overlords repeatedly rammed the "blended shore" model down our throats. Which never worked. (Got to know some nice people, though. So there's that.)

The easiest part of our job was the coding. Requirements gathering, analysis, project management, customer relations, QA/Test, etc. Working shoulder to shoulder with our clients, it was hard enough. No way our work could be further delegated while still delivering something useful.

Preaching to the choir, I know, apologies.

Exactly. It's a good short-term, bad long-term strategy.

Just like any other short-term strategy, could be appropriate sometimes, but very rarely is.

One other big concern is the incentive structure. A contractor will do whatever their contract incentivizes, and any as complex as software has plenty of areas where that can be gamed or will encourage bad outcomes. Charging for defects encourages litigating each bug; not charging encourages skimping on QA, etc.

Not having in-house expertise has the really big problem you mentioned because the only way to avoid these problems is if you have experienced oversight and that's almost inevitably the first “expensive” staff cut.

Off-shoring takes all of those problems and amplifies them with a big communications latency hit. I've never seen that go well except when an entire product can be handed over, including the management.

I agree with your point. Its just that not all consulting or outsourcing is bad.

A decade ago, at least in my experience, Chinese products were synonymous with bad quality and were not considered reliable. Nowadays, while those kinds of products do exist there also exist very good products designed and made in China (eg: DJI, OnePlus, etc.).

I reckon its still early days for software and going forward, we will learn how to build higher quality standard stuff and even high quality novel products. Generating this stigma against against consulting and off-shoring before we have had time to properly analyse the cost-benefit tradeoff doesn't help anyone.

They might be and are probably bad in many cases, and cases where they did not work should be publicised and studied. But making broad statements and correlating them with bad work environment is not helpful.

I think there is plenty of data to start drawing conclusions.

In the short term it can often work really well. Somewhat more rarely it can also work long term.

The trick IMO is to be hands on. Apple's approach to manufacturing is to be aware of what's going on even if they are not actually doing it.