I'm not questioning the validity of Brooks Law. If all of you programmer types agree that it's real, I'll buy that. But it would seem that with good management much of what Tesla is doing could and should be broken up into many small projects, so Brooks' Law wouldn't really apply. There are so many things that Tesla just doesn't get to, or things that are low on the priority list that could be a project unto themselves with enough capable people on staff.
Brooks law is real but you're right about breaking things up to a point. The current trend in a lot of web systems is to use a microservice architecture. Break every feature up into it's own tiny system that's managed by a separate team and has it's own release schedule.
Of course Tesla is not making a web system and with the exception of a few features, the car has to work without online access. Also each deployment results in an outage for the user (i.e. the 1-2 hours you can't drive your car while software in installing). So Tesla is pushed into a monolithic release where everything ships at once in one update.
That doesn't mean you can't apply this way of working to something like Tesla is doing. You just break up various features into libraries or plugins and then when it's time to do a release you take whatever versions each team has flagged as production ready and bundle them up.
However, it doesn't work as well as it does with web systems. These systems almost certainly have some degree of interaction. So you have to do integration testing between the components. If you find a show stopping bug all the other fixes have to wait for it to be fixed or pull the entire change from the team with the critical bug.
However, that team's release might be required for another team to be able to release their latest version because of dependencies. So then that gets pulled. So then you get releases that are disappointing to end users because it seems like Tesla isn't working on the things we care about.
Even worse if you find a critical bug after release then you have to ship and whole new release with (hopefully) a small fix for that critical change. But in order to do that fix you have to do the integration testing all over again.
All of this gets more complicated as you have more and more teams responsible for different things. So even though you arguably could just add more software teams to handle different aspects. Given Tesla's situation it isn't entirely easy to do it that way.
We really should give these guys a lot of credit. They have brought software updates to a car. To the point that they have pushed updates that have improved the driving dynamics of a car. Nobody else is doing this. So sure they aren't necessarily able to scale their team and deliver as fast as we might like. But they're delivering a hell of a lot more than any other car manufacturer. Because effectively most other manufacturers are delivering nothing (or maybe a release every year that requires a dealer to install). They sure as hell aren't going to put out a release that makes existing cars quicker, they'll just put that on the next model year. This is a remarkable achievement in and of itself.