#16 OSS Frameworks & Tooling 🧑🏽💻
In this week’s issue, we have more great insights from our Serverless Expert of the week AWS Community Hero Rehan van der Merwe, and the spotlight falls on AWS Serverless Hero Jones Zachariah Noel N!
Welcome
In last week’s article, our serverless expert of the week was Team Topologies Advocate and Datadog Ambassador Toli Apostolidis, and our spotlight fell on AWS Serverless Hero Kristi Perreault!
This week, our serverless expert is AWS Community Hero Rehan van der Merwe, our spotlight falls on AWS Serverless Hero Jones Zachariah Noel N, we look at the latest AWS service releases, blog posts, news and more!
This week’s newsletter is sponsored by Leighton.
A Glimpse into My Week 🎤
Since my previous newsletter last Friday, I have written an article on using Biome with AWS CDK applications for linting, analysing, formatting and using this in conjunction with Lefthook for running checks on pre-commits.
Check out the latest articles from other community members in the next section!
📰 Articles that caught the eye
⭐ The highlight for me this week was the article by James Eastham on complexity, and what it means for building software. Go check it out below.
Protect Your API Gateway with AWS WAF using CDK by Ran Isenberg.
James Eastham wrote a great article ‘On Choosing Your Complexity’.
Ian Brumby covered Handling Paginated Results Seamlessly with AWS Step Functions.
Benoit Boure covers Unmarshalling DynamoDB Items from Step Functions.
Jannik Wempe discusses How to Use Snapshot Tests in AWS CDK.
🎓 Ask the Expert
Each week, I ask a different serverless expert the same three questions to get their personal insights - this week, we have AWS Community Hero Rehan van der Merwe:
1. What is one common mistake you see teams making when implementing serverless solutions, and how can they avoid it?
One common mistake is neglecting the developer experience (DX) for local testing.
Investing in a robust local testing strategy that supports setting breakpoints for debugging saves significant time and effort later. I always recommend having at least two types of tests: unit tests and end-to-end (E2E) tests.Unit tests should use your user's (IAM or SSO) permissions (or assume the Lambda role) to interact with deployed AWS resources, allowing you to debug effectively.
E2E tests should simulate real-world calls, such as through API Gateway, and validate the responses.
2. Which serverless tool or service are you most excited about right now, and why?
I’m really excited about AWS Aurora DSQL. The technology behind it and the developer experience it offers is refreshing.
It eliminates the need for complex single-table DynamoDB designs. I’m looking forward to easy schema evolution, flexible query patterns, aggregations, and more.
Additionally, I’m interested in exploring Cloudflare’s serverless functions. Their billing model, based only on CPU wall time, is very tempting.
3. What is your favourite trick or tip when working with serverless that the readers may find interesting?
I prefer using a Lambdalith (monolithic Lambda function) for API-related tasks and AWS native monitoring tools are powerful enough. The only downside is that you require familiarity with AWS to use it effectively.
🚀 New Releases
Here are the latest releases this week in the AWS World - very quiet as you would imagine post re:Invent!
Amazon DynamoDB announces support for FIPS 140-3 interface VPC and Streams endpoints.
AWS Elastic Beanstalk now updates environment status when invalid.
AWS AppSync GraphQL enhances Amazon Aurora PostgreSQL and MySQL support with new resolver utilities.
🔥 Tip: Check out https://aws-news.com/ for the very latest up-to-date serverless releases as they happen, created by the talented AWS Serverless Hero Luc van Donkersgoed.
👷🏻 Tools & Frameworks
Checkout the latest OSS frameworks and tool updates from the past week:
The serverless-website-analytics CDK construct is now available as a free GA4 alternative.
Cloud Glance is available to allow you to manage multiple AWS accounts at once.
💡 Quick Hints & Tips
Each week I share quick hints or tips based on things I notice in day-to-day engineering life:
⭐ [Tip 1] IP Allow-listing of Developer Envs - when working with your development environments (including ephemeral) do you have the requirement to tie their access down by IP to ensure they are only accessible by your team?
I wrote an article on this in AWS CDK apps a while back which will show you how to do this easily with an L3 custom construct!
⭐ [Tip 2] Aurora Serverless v1 - if you are using Aurora Serverless v1 you should look to move to v2 as soon as possible, as it will be end-of-life (EOL) as of March 31st, 2025. You can see the note from AWS here.
“We strongly recommend upgrading any Aurora Serverless v1 DB clusters to Aurora Serverless v2 before that date. The upgrade can involve a change in the major version number of the database engine. Thus, it's important to plan, test, and implement this switchover before the end-of-life date. Starting January 8th, 2025, customers will no longer be able to create new Aurora Serverless v1 clusters or instances with either the AWS Management Console or the CLI. For information about the upgrade procedure from Aurora Serverless v1 to Aurora Serverless v2, see Upgrading from an Aurora Serverless v1 cluster to Aurora Serverless v2.“
✖️ Social of the Week
This week’s social is on LinkedIn and also by Rehan! He covers the main quotes and key areas from Amazon CTO Dr Werner Vogel's keynote speech, which, in my opinion, everyone should go watch! There is so much value in the post below with his highlights:
What are your thoughts? Feel free to leave a comment below!
🎙️ YouTube & Podcasts
Here are some of my favourite videos and podcasts this week:
Tudor Girba and Julian Wood cover Revolutionizing Software with Moldable Development.
On AWS Bites, Eoin and David explain exactly what Transit Gateway is on AWS.
Jacqui Read covers ‘Every Event, Everywhere, All at Once’ from a DDD perspective.
Yan Cui covers the world of Event Sourcing in less than 5 minutes in this video.
🗳️ Poll of the Week
In last week’s poll, we asked the question, “Would you now consider Amazon Aurora DSQL over Amazon DynamoDB as your go to database?“. 44% of respondents said no, they would not use it as their default now over DynamoDB, with 44% saying yes, and 11% saying maybe. This is a huge win for DSQL as a brand-new service!
This week we ask the question: “Can AWS SAM be used in Enterprises, rather than looking at AWS CDK and Terraform as default?“. What is your experience? Has this been a success or a failure? Please feel free to add comments below:
🗣️ Inspirational Quotes and Thoughts
This week’s quote comes from Rich Hickey, who is a renowned software developer and the inventor of the Clojure programming language.
“Programming is not about typing, it's about thinking.”
- Rich Hickey
I love this quote because it shows the importance of thinking about the problem at hand (how you solve the problem) before typing, thinking about the correct abstractions and styling, how to write the code to be maintainable, and thinking about where this code sits in the repo and alongside existing code - it’s not all about just physically typing!
This is one of my concerns with the rise of generative AI and code generation; most of the time, the code that is generated is not the most performant, lacks unit tests, has bugs, uses older versions of SDKs, doesn’t follow existing code style and rules, and is often ‘plonked’ into existing code bases verbatim as is (if you don’t have senior engineers picking up on it through reviews). I fear programming is an art that will disappear over time…
What are your thoughts on the rise of generated code through AI? Should junior engineers be using it, for example? What guardrails should we have around it? Do you think AI-generated code is good enough?
⭐ Spotlight
This week’s spotlight falls on AWS Serverless Hero Jones Zachariah Noel N:
Jones is a tech enthusiast and co-organiser of AWS User Group Bengaluru, sharing his expert knowledge through blogs on AWS Serverless, speaking at global AWS events and conferences, and contributing to open-source projects.
He also runs a fantastic newsletter, The Serverless Terminal, and co-hosts The Zacs' Show Talking AWS, a YouTube podcast on DevOps and Serverless practices. Thank you for all you do for our fantastic community!
👋🏼 Wrapping Up
Thank you for reading the latest Serverless Advocate Newsletter!
If you want to find out a little more about me, please have a look at:
https://www.serverlessadvocate.com/
See you next time,
Lee