Managed services are so much more than canned functionality

When the announcement of the new AWS Virtual Waiting Room crossed my social media feeds last week, my interest was immediately piqued as one of my clients has an upcoming requirement for such a feature, and since they’re already on AWS, this could be ideal!

However, once I read the release blog post, my excitement quickly subsided when I realised that this is not in fact a new managed service, but rather a set of open-sourced CloudFormation templates and Lambda zips that you have to deploy yourself. And the architecture that these templates define, as you might expect, is pretty complex:

AWS Virtual Waiting Room architecture

This solution is effectively AWS doing the development of a service and handing over operations of it entirely to your team. Of course, deploying CloudFormation templates isn’t that hard and this could tempt some teams in, especially those who are reluctant to venture outside the AWS walled garden when choosing managed services. “Here’s a pre-made stack that gives us exactly the functionality we need!”

But the initial CloudFormation deployment is only the start of it. You’re now on the hook for:

  • Rolling this stack out to all your environments
  • Debugging all issues that come up with it
  • Setting up monitoring on the key components of this service
  • Learning the underlying AWS services used which your (serverless-oriented) team may not be familiar with (e.g. VPCs, Elasticache)
  • Rolling out patches to CF templates and Lambda code as they’re made available in the open source repo

And because your team didn’t develop this in the first place, all of the above are harder since you don’t have any familiarity with the internal architecture and codebase.

Now I’m sure that this particular solution will still be valuable to organisations who have the engineering resources to handle these operational overheads. But this makes me really appreciate what we are getting from managed services and it acts as a good example of something which speeds up upfront development but comes with a significant (albeit delayed) ongoing operational cost.

Join daily email list

I publish short emails like this on building software with serverless on a daily-ish basis. They’re casual, easy to digest, and sometimes thought-provoking. If daily is too much, you can also join my less frequent newsletter to get updates on new longer-form articles.

    View Emails Archive

    ☎️ Serverless Clarity Call

    Need quick guidance on a specific issue on your AWS serverless project? Or just wondering where to start with serverless?

    Book a call and ask me anything.

    Learn more >>

    🛫 Serverless Launchpad

    Ready to start building your new AWS serverless project but need help with getting everything setup?

    The Serverless Launchpad is a done-for-you DevOps service installed in under a week. You get a leading-practice multi-account AWS environment, a scaffolded codebase and architecture including the common AWS serverless services, isolated cloud environments for individual developers, automated delivery pipelines right through to production and much more. Everything is IaC, extensively documented and handed over to your developers.

    Learn more >>