The Danger of Outsourcing.
Published on: 2025 - 1 - 20
The Danger of Outsourcing.
As we all heard of the tension between the West and China gets intensify everyday, the question of supply chain comes to in question, and “Made in America” became a hot topic as well, in here I will not be discussing politics but my experience on outsourcing.
Outsourcing = Dependencies
Outsourcing is like a dependency in software, my experience as a chef taught me you can’t everything yourself, however to what extend you should or shouldn’t produce it yourself is a matter of profitability both long term and short term.
Revenue, Cost, and Profit
The profitability in short is a balance between how much money coming in and how much
money you spend to make the product, which include labour, ingredients,
rent, etc., and in business it is always the balancing between act of increasing revenue
and reducing cost, hence outsourcing “some” of the work so that the labour cost (including
the benefits) will be lower but here is catch, the more you outsourced the more skill gap
and vendor dependent your business will be and there will be a potential risk if the vendors’
product faulty.
Take food business as an example, if you are making a bowl of ramen both
the noodle and the stock are outsourced the good side is your soup will be more consistent,
but it goes bad, not only you but all the buyers are at risk, yet making your own stock
seems to be more expensive but you have less control, and all your “cooks” are simply
“food reheaters”, what does it has to be with programmers?
Just get it from the supplier
Nowadays tech is a Jenga of libraries and packages, when I was in coding bootcamp I was told to “just npm install” or “pip install”, and even heard some YouTuber will say “don’t reinvent the wheel”; For critical parts of the application such as router, server, security including JWT, hashing obviously you want to rely on those packages, just like you shouldn’t brew your own soy sauce that’s just risky, but other parts maybe is better to just produce it yourself.
From Scratch
The “start from scratch” attitude seems to be a dying art/attitude in the restaurant kitchen and possibly software world, only the top restaurant will(can) afford to make sauces and stock from scratch (not all Robuchon uses his formulated boullion “tea bag”), again not everything should be made in-house, but keeping the spirit and attitude to start from scratch empowers the new generation to create and think outside of the box.
LLMs is an outsourcing company
The current trend of reliance on ChatGPT and other LLMs are starting to go out of hand, as a solo remote worker I do see the value of LLMs as my “rubber duck” and help me to find resources to read but the code sometimes are questionable. And this trend of “just ask AI” might create the supply chain and labour skill gap in the future, and when the outsourcing company raise the price and your don’t have the skill to produce your most critical product, your business is in trouble.
Conclusion
Call me old school, but I have experienced it during my days in a commercial kitchen focus on high-turnover, the outsourcing company will eventually will hold you by the balls, the profit will get chipped away and you no longer have the skilled labour to create and produce, I am much rather keep the reliance of dependencies as low as possible.
Even though I am new to the software field, I am still trying lower the amount of dependencies as much as possible, and maybe I should start learning how to write my own build system, and static site generator, I still have the spirit of a craftsman in both the kitchen and writing softwares.