SaaS architecture pitfalls: Lessons from the field (SAS305)
Key Takeaways
Promise of SAS
Maintaining agility and flexibility for teams
Continuing to focus on delivering innovation for customers
Maintaining operational efficiency
Achieving sustainable growth and profitability
Pitfalls and Learnings
1. Out of Control
Importance of having a control plane to manage SAS at scale
SAS Builder Toolkit (SBT) as an open-source solution to build the control plane
Standardization and pluggability of SBT for different components
2. Identity Crisis
Differentiating identity management for the control plane and application plane
Avoiding tenant mapping by using Cognito user pools and JWT tokens
Implementing row-level security using AWS IAM and ABAC
Considering federated identity and frictionless onboarding
3. Leaving Out the Microscope
Importance of observability for different roles (cost management, troubleshooting, product development, security, and compliance)
Using OpenTelemetry for flexibility and integrating with third-party observability tools
Ensuring tenant context in all observability data
4. Revenue Leakage
Implementing resilient and flexible billing with event-driven architecture
Tracking and avoiding revenue leakage through usage monitoring and entitlement management
Considering free trial experiences and the "last mile of pricing"
5. Failing to Fail
Importance of comprehensive testing, including policies, artificial tenants, and load testing
Using chaos engineering tools like Gremlin to introduce failures and test resilience
6. Not Anticipating More Complex Deployments
Addressing customer demands for deploying infrastructure in their own accounts
Exploring solutions like customer-managed keys, Nitro Enclaves, data privacy vaults, and remote agents
Ensuring observability and control across these complex deployment models
Upcoming Sessions
SAS 406: SAS Builder Toolkit (Todd Golding) - Tomorrow, 12:30 PM
SAS 304: SAS Builder Toolkit Workshop - Tomorrow
Your Digital Journey deserves a great story.
Build one with us.
This website stores cookies on your computer.
These cookies are used to collect information about how you interact with this website and allow us to remember you. We use this information to improve and customize your browsing experience, as well as for analytics.
If you decline, your information won’t be tracked when you visit this website. A single cookie will be used in your browser to remember your preference.