Serverless

Serverless computing is a cloud-computing execution model in which the cloud provider dynamically manages the allocation of machine resources. Pricing is based on the actual amount of resources consumed by an application, rather than on pre-purchased units of capacity. It is a form of utility computing.

Serverless computing still requires servers, hence it's a misnomer. The name "serverless computing" is used because the server management and capacity planning decisions are completely hidden from the developer or operator. Serverless code can be used in conjunction with code deployed in traditional styles, such as microservices. Alternatively, applications can be written to be purely serverless and use no provisioned servers at all.

Interviews

Serverless computing brings with it a lot of convenience, but it also presents a number of challenges for existing tools and an operational mindset.

Is the goal to talk to developers about what to be thinking about when you instrument a serverless app?

Yeah, exactly, it's what developers should be thinking about. Basically, I think developers need to be in a mindset generally of instrumenting their applications not just in serverless but beyond. I think that with a more traditional system it was almost a nice to have, but observability becomes even more crucial for serverless applications. That's because you have far less ability to infer the health of your application through infrastructure alone.