Is serverless computing ready for mainstream? For certain, it is approaching quickly.
“Serverless” in 2016 is increasingly looking like the early years of container adoption was in terms of the fervor and excitement surrounding the approach, and already use cases in production environments are beginning to be documented by major enterprises as well as startups looking for an agility advantage.
Products available to drive serverless application development, of course, are still in their infancy, and often lack some of the tooling needed to enable developers to build and deploy quickly. However, the maturity at the API serverless end of the market bodes well for what can be expected to be available for broader application development throughout the rest of this year.
Where Docker took 24 months to grow its container technology into a dominant global architecture model, there are already signs that serverless vendors and users are cutting that growth timeline in half.
“The most striking thing for me is how everyone seems to be doing it differently. There doesn’t seem to be one blueprint that everyone is adopting” — Anthony Stanley
A sold out conference being held in New York next week, ServerlessConf, shows how advanced the serverless approach to application development has already become.
Serverless, or stateless, application development is an approach that is entirely built in the cloud, offering infrastructure and tools needed to run application code or services, enabling developers to focus solely on creating and deploying applications.
ServerlessConf co-organizer Anthony Stanley from tech education outfit A Cloud Guru said planning the conference surfaced many proposals that demonstrate that enterprise are already using serverless in production environments. He said that the overall number of presentation submissions was higher than expected for a fledgling conference topic, and especially so for the number of submissions from people running serverless in production.
“I find that when organizations start experimenting with serverless, the case to move to production makes itself clear very quickly,” Stanley said. However, he is also quick to admit that it is very much an emergent technology area:
“The most striking thing for me is how everyone seems to be doing it differently. There doesn’t seem to be one blueprint that everyone is adopting. I think trends will bubble up, especially ‘ops in a serverless world’, and there will be a move to more conformity in serverless architecture as user stories are shared around the associated benefits and pitfalls,” he said.
The Drive Towards Serverless
The New Stack contributor and analyst Janakiram MSV recently documented five key factors that are driving a serverless application development approach. He points to all the major themes of today’s application development environment as driving the move to serverless: maturity of cloud computing, the growing sophistication of backend-as-a-service offerings, APIs, containers and microservices, and the move first to DevOps and increasingly to “NoOps” are all creating the perfect storm for interest in serverless.
DevOps significantly adds to the development time as application builders are weighed down by the need to manage their server infrastructure at the same time.
Perhaps this last point around NoOps is driving enterprise uptake the most. A recent study I conducted into API Serverless Architecture Products, sponsored by Restlet, quotes Chad Arimura, CEO of serverless computing systems provider Iron.io, who said the problem with DevOps is that “it makes the developer part of the operations team, and that screeches enterprise innovation and agility to a halt.”
A study by Michael Ringel, Andrew Taylor, and Hadi Zablit for BCG Perspectives released at the end of last year found that for enterprise, the biggest obstacle to innovation is that development times are too long. DevOps significantly adds to the development time as application builders are weighed down by the need to manage their server infrastructure at the same time.
The rise of DevOps has been part of a three-pronged revolution that is occurring across industry as businesses grapple with managing new digital environments:
- An infrastructure revolution is moving much of enterprise to cloud or hybrid cloud server environments
- An architectural revolution has given rise to APIs, containers and microservices, and the use of backend-as-a-service products to enable faster creation of single purpose apps with richer functionality
- An operational revolution has then evolved where these technological revolutions are changing the way business is organized: business and tech teams are working more closely together, and every business unit is taking on its IT responsibilities and decision-making.
Enterprise architect Oliver Cronk describes this in his SATO (Strategy, Architecture, Transformation and Operations) Model:
One of the most interesting aspects of Cronk’s model is the up-front placement of sales and marketing as driving business impact around organizational learning, technology uptake, and strategic decision-making. It resonates with Nikki Barua, CEO of award winning agency BeyondCurious, who works with leading global brands to assist them with their move to digital and mobile environments.
“Businesses are getting disrupted at a rapid pace,” said Barua. “To win business, companies need more intelligence, access to data on-the-go, and accurate information given the frequency of product changes. Sales departments are making more autonomous technology choices to help them achieve their goals. In addition, greater accessibility to cloud, mobile and AI has fueled innovation independent of the IT departments. We expect to see this trend accelerate in the coming years.”
So sales teams are making decisions to adopt technology and then as they are using that tech with customers, that is driving product creation decisions across the enterprise. Only six months to a year ago, it was marketing that was leading that decision-making, but Barua said that sales departments — given their revenue generation role — are given more autonomy to drive innovation, especially when it is about customer-facing application development.
The Broader Serverless Market
The broader serverless application development currently consists of a number of major vendor platforms (IBM OpenWhisk, Amazon Lambda/Serverless, Microsoft Azure Functions, Google Cloud Functions) and open source frameworks (like Deployd, Sparta and IOpipe), the rest of the tooling for a serverless stack is still in development. Tools like Stamplay and Syncano show a lot of promise as being new products that provide a serverless microservices orchestration layer, bringing in functionalities like authentication and user permissions, backend scripting, third party API integration, messaging and work queue management, data management, and channel interfaces to create an application.
Stanley said this is why the ServerlessConf has structured their program to first center around use cases and secondly to promote discussion around open source tooling: “What we’re seeing is that the end users implementing serverless architectures are often being more creative than the vendors who are providing the platforms ever expected. So we really want to explore the real world use of serverless in production, and all associated challenges. The second day of the program is all about Open Source and community. With such a new and fast maturing offering, there are a number of missing elements required to run serverless in production at scale. We want to focus on the Open Source projects that have sprung up to fill the gaps around this new way of building applications.”
This market sector trajectory models the Docker and Kubernetes experiences where early adopters were often creatively building around some of the shortfalls of running containers at scale, while over the space of about a year, a range of open source products emerged (many also then launching a commercial offering) to help the nascent ecosystem become the paradigm-setting influence it is today.
The API Serverless Market
In the serverless realm, the API serverless products are the most advanced products today. Many of these are offering a serverless stack that manages authentication, API design, hosting, usage, and lifecycle needs all in the one product. The majority in the market today provide visual creation tools that enable users with a variety of technical proficiencies to all build APIs on top of cloud-stored data and link it to production applications, without any server management.
The current dominant use cases for API serverless are:
Prototyping new dashboards and applications which can then be maintained in production.
Mobilizing an existing legacy database where an enterprise wants to create an API on top of an existing datastore without introducing any risks into a monolithic environment. The legacy datastore is being cleaned, anonymized of any confidential data, and duplicated in a cloud store so that a serverless API can be built on top of it to enable new application development.
Leveraging enterprise industrial maturity approaches, where enterprises are taking all the learnings from building single use case APIs and repackaging those into microservices-like standardized APIs where the one (serverless) API is used for several applications consistently.
There are also signs that API serverless architecture is helping the uptake of the industrial Internet of Things, but product vendors working with customers in this domain are cautiously indicating that this is still very much a pilot testbed with more widespread uptake not expected for another year yet.
Where these API serverless products are seeing the greatest interest is in speeding up the development time that has been holding innovation back. One study informant talked about how systems integrators are working in the field to build real-time business intelligence dashboards right in front of their customers by first creating a serverless API to a business data source.
Serverless For Enterprise Innovation?
It is this sort of rapid time-to-market advantage that Mike Amundsen argues is essential to creating an innovation culture across an enterprise. Speaking at APIdays in Melbourne earlier this year, Amundsen (the co-author of the forthcoming O’Reilly book Microservice Architecture: Aligning Principles, Practices, and Culture) argues that enterprise can easily enable innovation by giving anyone within the organization access to serverless technologies like an account for Amazon S3 storage.
Amundsen said innovation leadership is about putting some general boundaries around the enterprise (to manage risk), and then encouraging staff to have the freedom to “look for the next horizon.” He suggests enterprise enable unplanned innovation by creating a culture where staff do not have to ask for permission to experiment.
API serverless products (and in the future, more mature application serverless products like what Syncano are offering) could be the next suite of tools that enterprises can make available to all their staff to help drive this experimentation in new product creation, to automate or enhance business processes, and to assist anyone to dabble in application prototyping.
By using serverless environments, the costs to produce applications drops dramatically, and security risks of enabling direct access to legacy data-stores via API are removed as they can be replicated in serverless environments and APIs built on top of those.
As cloud-based computing and storage costs continue to drop, more enterprises store legacy data in the cloud, and tooling is created that lets less technical staff to create applications, the move to serverless will speed up what is already a dynamic growing force.
The research report Market Scan: API Serverless Architecture, sponsored by Restlet, is available for free download.
IBM and Iron.io are sponsors of The New Stack.