- We use the Serverless framework
- Monorepo with multiple (micro) services
- Each service exposes Lambda for particular functions (e.g. Articles service exposes GetArticle, CreateArticle, etc..)
- No business logic is being shared between services, only libraries
- Three environments, Dev, Stage, Production (and every developer can also deploy its own)
- Tests are invoking the Lambda handlers directly and are mocking responses from other Lambda calls. We use Localstack to stub AWS services, such as S3 and DynamoDB.
Still, a lot to learn of course, but so far everything is working great for us.