Serverless also lightens developers' workloads. "Writing less code, particularly infrastructure code, is attractive to the IT bottom line," Austin notes. "Having more developers deploying business functionality, while letting the serverless technology handle infrastructure provisioning, is a powerful benefit to an IT organization."
Accelerating development speed can also make organizations nimbler and more innovative. Serverless is the fastest way to turn an idea into a functional solution, Kralj says. "The approach is perfect for rapid application development; you can now achieve it with just a few lines of code."
Paradoxically, serverless can sometimes also increase workloads, although not to the extent that it will nullify the technology's many benefits. "There will be more work involved in creating functionalities ... and stitching together APIs to accomplish what the business needs," cautions Greg Cox, senior CTO architect with disaster recovery service provider Sungard Availability Services.
Squashing bugs can add to workloads, too. "Without standardized security, testing, monitoring and configuration management, serverless bugs are insidious," warns Bert Johnson, principal consultant, cloud, at digital business platform developer AHEAD. He notes that bugs magnify deficiencies in the software development process while forcing developers to abandon critical tasks to join search and repair missions.
Drawbacks of serverless computing
For all its benefits, serverless computing also presents a few significant drawbacks. The technology isn't particularly good, for example, at supporting prolonged operations. "Serverless wouldn’t be the right approach if you're running a task or process that takes a long time to compute," McMahon says. "Currently, Azure Functions and AWS Lambda can only run for a maximum of 10 and 15 minutes, respectively."
Cold starts can also send a chill through some serverless adopters. "A cold start is the time period—typically a few dozen milliseconds—needed to wake a function in order to execute it," McMahon explains. "For the vast majority of use cases this time is negligible, but there are some use cases where this delay is unacceptable and serverless computing would not be ideal."
Potential adopters may also be dissuaded by the prospect of vendor lock-in. "IT and development leaders ... should be aware that the major serverless systems — AWS Lambda, Azure Functions and Google Cloud Functions — are not interchangeable," Kralj warns.
From a security perspective, serverless presents a unique challenge. "On the one hand, the risk is limited by the short runtime durations and isolation from the underlying host OS," notes Rani Osnat, vice president of strategy for security software developer Aqua Security. "On the other hand, functions are often provisioned with too many permissions or with vulnerable components, which may lead to the serverless functions being used as an intermediary step in an attack to get access to other resources," he says. Serverless should be configured securely and monitored for anomalies and abuse, Osnat advises.
Serverless adopters should also be cautious when calculating their capacity needs. "Traditional servers fall over when they're over capacity, preventing cost overage," Growney says. "Serverless tends to be able to scale in a relatively unlimited fashion, which can lead to very costly mistakes if you're not careful."
Finally, serverless converts may also see their payrolls rise. "If your firm is tech-focused, one of the more significant outlays will be allocated to hiring developers," says Patrick Navarro, executive vice president and head of cloud at IT recruitment agency Jefferson Frank. "Qualified, skilled developers are thin on the ground and, in turn, expensive to hire and retain."
Looking ahead: Serverless aids integration efforts
As cloud providers continue introducing new services, IT leaders face the challenge of gluing everything together to form a coherent solution that's capable of integrating with legacy applications running either in the cloud or in the data center. Serverless computing is ideal for these sorts of new integration challenges, Kralj says. "With its reactive, event-driven nature, serverless enables the sorts of real-time connections between services that modern solutions demand."
Newcomers should approach serverless in the same way they would evaluate any disruptive technology. "Take the time to learn and understand the [serverless] product prior to implementation," advises John Kovolski, cloud architect at IT consulting firm Anexinet. "At the very least, have a rollback process," he says. To gain insight into potential operational and cost benefits, Kovolski suggests measuring the performance of current systems for comparison against the planned serverless replacement.
Growney suggests gradually easing into serverless technology. "Serverless isn't necessarily an 'all in' technology," he explains. "It can be used as little or as much as is needed."