headshot

AJ Stuyvenberg

Staff Engineer at Datadog

AWS Serverless Hero

(ex) Principal Engineer at Serverless Framework.

Serverless & distributed systems.
Avid parachutist, hiker, dog-lover.

Boston, MA

More about me

post image

Avoiding the Lambda Doom Loop

Heads up serverless developers! A recent change in the Lambda sandbox environment changes how timeouts are handled, potentially causing your function to enter a permanent doom loop. This post will explain the change, how to spot it, and how to avoid the doom loop.

post image

BASE Jumps & Backups - how I use Synology and AWS to store my data

Erasure coding and multi-tier backups can help you store your data safely and cheaply. Here's how I use a Synology DiskStation and AWS Glacier to store my BASE jumping videos, and my opinions on both after a bit of use.

post image

Ultimate guide to secrets in Lambda

Securing your API Keys, database passwords, or SSH keys for Lambda Functions is tricky. This post compares Systems Manager, Secrets Manager, Key Management Service, and environment variables for handling your secrets in Lambda. We'll cover costs, features, performance, and more. Then we'll lay out a framework for considering the risk of your particular secret, so that you know what's best for your application's secrets.

post image

How Lambda starts containers 15x faster (deep dive)

We've seen how containers on Lambda initialize as fast or faster than their zip-based counterparts. This post examines exactly how the Lambda team did this, and the performance advantages of everyone shipping the same code.

post image

The case for containers on Lambda (with benchmarks)

Lambda recently improved the cold start performance of container images by up to 15x, but this isn't the only reason you should use them. The tooling, ecosystem, and entire developer culture has moved to container images and you should too.

post image

You shouldn't use Lambda layers

AWS Lambda layers can help in certain, narrow use cases. But they don't help reduce overall function size, they don't improve cold starts, and they leave you vulnerable to a particularly nasty bug.

post image

Understanding AWS Lambda Proactive Initialization

AWS Lambda warms up your functions, such that 50%-85% of Lambda Sandbox initializations don't increase latency for users. In this article we'll define Proactive Initialization, observe its frequency, and help you identify invocations where your cold starts weren't really that cold.

post image

Thawing your Lambda Cold Starts with Lazy Loading

This post will show you how to identify opportunities where Lazy Loading dependencies can help you reduce Cold Start Latency. We'll walk through a demo application and measure the performance impact of Lazy Loading in AWS Lambda!

post image

Introducing Streaming Response from AWS Lambda

A quick look a new way to stream data from AWS Lambda functions, written in NodeJS.

post image

Benchmarking the AWS SDK

Benchmarking cold start performance of the AWS SDK v2 and v3.

post image

AJ's re:Invent Recap - 2022

My three favorite features launched at re:Invent 2022

post image

Introducing Lambda SnapStart

A first look at the new way to beat cold starts - 6 minutes

post image

Safely migrating Lambda functions from x86 to ARM

Exploring an interesting side-effect of CloudFormation deployments for Lambda - 6 minutes

post image

Introducing Lambda Function URLs

A quick look at a brand new way to invoke Lambda functions!

post image

Ice Cold Starts

Understanding the various types of cold starts in Lambda - 9 minutes

post image

Stream your data!

Leveraging DynamoDB streams to improve your API performance and service reliability - 8 minutes

post image

The what, why, and when of Mono-Lambda vs Single Function APIs

An analytical comparison of two common API patterns in Lambda - 8 minutes

post image

Serverless at (Team) Scale

Reduce complexity, cognitive load, and deployment times by splitting cloud infrastructure from lambda code, using CloudFormation Outputs to share resources, and use SSM to play nice with Terraform and other IaC tools. - 8 mins

post image

Developing against the Cloud

Stop emulating, start developing with real cloud services - 5 minutes

post image

How to pass a SQS URL to a Serverless Function

Easily pass an SQS URL to your serverless function - 2 minutes

post image

Understanding Zip Files and Lambda Functions

That's not possible! Learning new and fun things about the Zip file data structure. Reading time - 2 minutes

post image

Engineering fundamentals I learned from Lego League

My thoughts on how years of Lego robotics competition shaped my career as a Software Engineer. Reading time - 7 minutes

post image

Deploying a Serverless Image Service on AWS with CloudFront, Api Gateway, S3, AWS Lambda, and Thumbor

Leverage this CloudFormation template with a few simple tweaks to deploy a cost-effective Image Service to your platform.

post image

Custom migration types with Rails 5

Leverage support for multiple databases in Rails 5 to implement custom migration types for post-deploy migrations, or for scheduled migrations.

post image

Importing 50,000 Users in a continuous delivery environment

How we successfully merged two identity providers, imported 50,000 user accounts, and did it all with no downtime.

Get in touch

I'm always interested in hearing about new opportunities.