Reverse engineering AWS Lambda

So I have been spending some time jamming my hands into AWS Lambda’s greasy internals, and I’d like to share all the wonderful details I’ve discovered.

why though?

I’ve use AWS Lambda quite extensively at work. And I wanted to get a better understanding of its inner working. What prompted this, you might ask?

Unofficial Native Go Runtime for Google Cloud Functions

There was an off handed comment by the author about the “Lambda API being a bit more complex.”

Well I aim to find out just how complex it is, with the end goal of writing a custom runtime, similar to the one above.

Probably in Python, just because it’s quick to prototype with.

Lets get started, shall we?


For the impatient of you, if you just want to see the results, feel free to look at the code here.