I am fully into micro-services and making them as encapsulated as possible. But the ‘don’t share a database’ is a leap I can’t make (at the moment :-)
So you have a ‘users’ table, and you have two microservices that use it (excuse the pun). You are really going to have two separate users tables? One containing the user id and name and password for your authentication micro service and one containing the id and shipping address for your orders microservice?… (or whatever division you come up with, or three users tables or four etc etc).
Tightly coupling database structure and component boundaries It just doesn’t smell right to me
But as I say I love the encapsulation serverless components give you, so love to hear your response and love to be proved wrong (with an example or two :-) )