I've been doing serverless in anger for years. My vision is to use annotations or decorators to tag functions and have the implementation transparently handled.
@spawn //makes this a lambda
function fn() ... {}
@queue //makes this a queued function sqs or similar
function fn() ... {}