If you ever have to start a big company from scratch, this is how to do it.
There aren’t any major drawbacks to this model when a business is young (first couple years). The downsides appear when you have different parts of your application with very different load requirements.
It also takes a lot of discipline to write code this way. Without strict code review and more experienced hands, the bounded contexts fall apart.
One of the advantages of the microservices model is it limits the damage people can do. :)
It forces a bounded context on a team of engineers and says “hey, play in this sandbox and follow these SLAs. If your internal designs are awful, good luck.”