Great piece. I think the future of FaaS architecture still isn't widely understood (see: slim vs fat function discussion below) mostly because people are going to great lengths to shoehorn old architectural styles into FaaS platforms.<p>To be honest, I think AWS Lambda (and Azure Functions / etc.) nailed the compute and economic model, but only got halfway there WRT abstraction layer and ideal development for serverless functions themselves. There's an opportunity here to introduce millions of new software engineers to a programming model where they no longer have to think about <i>how</i> their web services run and can treat remote function calls like first-class citizens of their development environment.<p>In fact, this is what we've built and we're continuing to iterate upon at StdLib [1]. One of the most common pieces of feedback we receive from our customers is; "this is everything serverless should be." We have an open source Gateway specification called FaaSlang [2] that makes local development a breeze and perfectly in sync with production functions, as well as providing automatic error (type, parameter) checking at the request level, before function execution. We've only been able to get here by "throwing the baby out with the bathwater" and reimagining backend web development with serverless functions from the ground up.<p>Disclaimer: I'm the founder of the company and pretty gosh darn excited about the future of this space. Check us out if you get the chance, you won't be disappointed. :)<p>[1] <a href="https://stdlib.com/" rel="nofollow">https://stdlib.com/</a><p>[2] <a href="https://github.com/faaslang/faaslang" rel="nofollow">https://github.com/faaslang/faaslang</a>