I’m not an expert in self driving car engineering. I have some experience with ML but not in a significant professional way. What I have is a decade of professional experience building all kinds of software and a skeptical eye.
You have a problem that is unconstrained, with infinite variables, where even a simple mistake can have catastrophic outcomes. Society itself may object to self driving cars for a ton of reasons, from safety to simply driving like a grandma and slowing everything and everyone down. The cost to develop this technology, plus the added cost of hardware to each car, will be enormous and is not obviously a cost savings over a $15 per hour human. If the self driving car is doing anything other than getting from A to B, you still need a human (or a human-like robot) to handle the unloading / delivery / whatever at the end.
Now, I’ve worked at companies with extremely talented and intelligent engineers, and something as constrained and seemingly simple as making a login form can take a long time to perfect - and no lives are at risk! Just imagine the challenges and requirements for building self driving cars. New hardware, software, real-time processing and analysis of tons of data, all to drive split-second decisions that can kill people if done incorrectly.
Huge challenge - huge risks - huge money - uncertain payoff. This is not something that will appear suddenly. If there aren’t convoys of self driving trucks operating in desert highways overnight, where it’s dry and straight and flat and no one else is there, then we aren’t going to see city taxis for a very long time.