They actually had 5,000 engineers in the tokenmaxxing blog post. That's a lot of engineers for the rest of Uber's business activities.
Airports: different regulations, different rules for pickup/dropoff. Also scammers who pretend to be in a car, walk with their phones around pick-up ares in airport and do bait-and-switch (saw that in Istanbul SAW and in Dubai Al Maktoum)
I took a ride from SEATAC to my hotel in downtown Seattle and besides the ride itself, there were 5 other items on the bill, 4 of which are specific to the place I used Uber.
Then I had the return trip from my hotel to SEATAC, on this one I got EIGHT items on the bill, on top of the ride fare. Some specific to Seattle itself, some specific to the road that the Uber took (a tunnel fee - which is different based on the direction you take it in), etc.
So the real question is what is NOT different between two locations. Less than 15% of the bill.
I also took Uber in India, where you have to share a one-time password with the driver for example, which I've never seen in any other country.
In some other countries the Uber app exists but Uber drivers are actually taxis, so you're actually ordering a taxi via the app.
Essentially every single airport in the world is custom UI and custom walking path guides and pickup instructions, and rules for where pickups/dropoffs/etc can occur can change multiple times in a day, much to everyone's enjoyment. They're almost all private property, and are so valuable that whatever they want is what they get.
And food. Most/~all? major brands get custom integrations.
Hundreds (iirc) of identity verification providers, most or all custom, and constantly weighed against cost and accuracy because it ain't cheap and it ain't good but it is far better than none (both legally and ethically).
No idea how many payment sources they accept, but it's definitely a lot more than anyone who hasn't lived on 5+ continents thinks.
And remember that this is all international. So scale is huge and law changes are constant and frequently conflicting. Darn near every useful feature is illegal somewhere, at some time, for both good and bad reasons.
---
This is not at all to say I think Uber is efficient, clearly it is not. Not by an enormous margin. But there is a legitimate need for truly absurd complexity, because the world is not consistent. You see similar things happen anywhere [thing] tightly interacts with humans.
TL;DR: Managing a taxi service (that's what Uber is in my mind, not whatever "ride share" means) that spans cities and states, never mind countries, is extremely complicated. To their credit, Uber manages to make it look simple to the end user, prompting such comments as "meh it's just a few screens how hard could it be", which is triumph of product engineering as far as I am concerned.
Related: this blog from Uber talks about the problem of serving market-specific configuration data at scale: https://www.uber.com/us/en/blog/how-we-unified-configuration...
I suppose it becomes easier once the browsers, Android and iOS have been frozen for a little longer than 16 years. Nevermind the changing regulatory field and new products (when was Uber Eats launched?).
In that 16-year period, Covid-19 emerged, as did viable self-driving and partnership with Waymo. A networked, people-facing app can't ever be "done", unless you have perfect prescience. Internal tech-stacks are a living thing: keeping a service that on the outside appears to be unchanging is a lot of work! Scaling is a lot of work! Scaling services and maintenance feed off each other.
Each country has their own laws around what uber is and isn’t allowed to do. This needs to be formalized in code. For example you actually call a taxi, though the uber app, and the amount you pay is per mile, not a fixed fare decided ahead of time. To add to this complexity, some cities will have their own laws. What happens if you take an uber from town a to b, where each one has different laws ? A lawyer probably has an answer but the app needs to adhere to that. On top of that laws change all the time.
Optimization, well you can always optimize something. speed, costs, paths etc. In a way this never ends.
I think the part we interact with as consumers is a tiny sliver of the complexity those services have to build and operate.
I think this is partly a problem with companies that have had heavy investment. Uber’s value isn’t based on what they are doing, it is based on the idea that they are going to render ideas like owning your own car or taking public transit obsolete (I mean that’s an exaggeration but less of one than it ought to be).