Ford CEO: Why Tesla's strategy is so far ahead - When companies are boiling and don't notice it
What applies to software applies to people organizations all the same and it's a brilliant learning piece.
When this piece of the Ford CEO being incredibly honest dropped and went semi-viral I couldn’t help but nod along the entire time.
It reflects by and large exactly how we shouldn’t think about software and people in modern companies:
“150 completely different pieces of software and we can’t even understand it all”
I’m trying to explain in this article what the problem of Ford is in a broader context without having to make a good case for Tesla’s product management.
This is more about Ford’s problems that grew historically rather than how innovative Tesla is.
It’s a normal cycle that we will see more and more now specifically in the face of AI as companies can do more, faster. Without the baggage of licenses and other old structures to rethink their entire approach. And older companies slowly boil in their water without noticing it.
Ford recognized now this existential danger (albeit late) and is starting to restructure to build all their software in-house. It’s a massive lift for a company of this size. They have 0 experience with it.
And at the same time, only 350$ - 500$ of the total cost of a car is attributed to their software development. This might be impressive or just shocking considering how much attention SHOULD go to that part of a car since it’s so important.
The true cost of outsourcing
On the face of it all it’s all a question of cost. How much does it cost us to outsource something vs hiring someone to do the job?
The hidden cost is usually much bigger than people realise and it’s in communication friction. Quite literally the same principles apply to software applies all the same because now people have to work with these systems.
There are 3 levels when it comes to understanding system (people & software) friction:
Insourced → Least friction, you build and you own what you do
Partially outsourced → Outsourced to contractors but owned by the company
Completely outsourced → Outsourced to contractors and licensed
In principle, you want as much insourced as possible for various reasons even though it might cost the most on the balance sheet. But why is that the case and when can we forego this principle?
Why did this happen to one of the biggest companies on this planet?
How can this be avoided?
The failed quest for outsourcing alignment - Conway’s law
Conway’s law is in full effect here:
Conway’s Law: Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.[2][3]
— Melvin E. Conway
This famous quote by Conway can be applied here as well. The reason why other car manufacturers struggle so much in changing a crucial part of their cars - the software) is clearly visible.
They struggle to iterate fast and have a coherent easy-to-use interface for all the functionality Tesla for instance offers.
Tesla is not perfect, I’m not even a fan of them anymore (I will sell my Model 3 soon) but in comparison, you can do a lot in a Tesla that other manufacturers just struggle to deliver from a value perspective:
This is not a struggle of incompetent designers and product managers, the problem is that their systems are inherently hard to change. The way they outsourced all their individual pieces for the software to 150(!) vendors make it impossible to do anything quickly.
Let’s translate this into a different perspective:
They maneuvered themselves into a high-dependency situation because they thought about unit efficiency when it was about innovation
If you don’t own a crucial part of your product you can’t guide how it’s developed effectively so changing back becomes even more difficult
The frog is boiling in hot water and doesn’t notice.
How did this happen to Ford and still is happening to so many other companies? They grew into it. Ford is an automotive manufacturer first and a software developer second.
The software portion of cars has dramatically increased and changed slowly over the years what we understand a car is.
Self-driving capabilities: While autonomous driving is not perfect they are very solid to at least partial driver assistance.
Over-the-air updates (OTA): Over-the-air updates update the entire software stack. I drove a renault clio for 6 years and didn’t even update my navigation software once. Now I get an update monthly.
Connected Car Tech & Infotainment: You can connect your car with Wi-Fi hotspots, add your phone, real-time traffic and weather data, watch movies… remote control, and diagnostic features… we’ve come far from the FM radio from the 90s
Electric Vehicle Management: Managing and optimizing the car battery and charging system is becoming more and more sophisticated. You can even adjust and customize your driving modes. All of this required not so long ago a visit to the mechanic.
In other words:
The software for a car has become not just a “nice to have” for a lot of customers, it’s an integral part of the core product.
Ford strategically did not notice that soon enough because they were busy competing against other competitors and because this change happened gradually and seemingly slowly:
And this serves as a good principle when we think about what we can outsource and what we can’t:
Adjacent services like 1st level support to some degree or other services you can outsource safely if there is an easy replacement and no bigger commitments through licensing (making it impossible to exist a contract easily).
Core product features should never ever be outsourced and even from an architectural perspective you have to be somewhat careful whether you want to segment them. The same applies here internally that applies externally: if you segment core features into different teams you WILL lose control and flexibility. But internal is not as bad as external teams still.
But why is this the case? Do the “good” contractors just not exist? Are they all after your money?
The endless tale of “Incentives”
I don’t like working with contractors but I had good examples during my career. But the good ones all had one thing in common
They were individual contractors embedded in our teams to 100% and were incentivized correctly. They were on the same OKR goals as the other team members and they were present in the same daily and weekly rituals.
External contractors suffer from what I commonly refer to as the agency problem. They have multiple stakeholders pulling on them at the same time and they are inherently incentivized to charge a lot and they don’t overly care too much about the success of the licensing company.
Keep reading with a 7-day free trial
Subscribe to