That’s a trade off. With the traditional approach you may introduce bugs into production when your dev environment isn’t a perfect emulation (works in dev!). With this approach dev and prod are much more identical.
True, but this problem is greately exacerbated by the incredible complexity of this sort of architecture. And running dev in the cloud doesn't completely solve it either as configuration issues have always been a major cause of the "works in dev" issue.
Again, “incredible complexity” is not correct, it’s just complex in a different way. Serverless is pretty remarkable because it abstracts a huge amount of pain away. Never deal with weird file issues or even having to think much about scalability.. that’s a huge luxury. There are other parts that are more complex but you’re basically trading a lot of nuisance away