Serverless: Suitable projects

Serverless - Beyond the buzzword is a book about Serverless aiming to give you all the information you need to make informed business decisions. This is part of a series of articles summarising some of the topics from the book.
More information about Serverless - Beyond the buzzword can be found here: serverlessbook.co

You can also watch the video version of this here: https://youtu.be/gdYQnD1wUu8

Serverless can be appropriate for many different types of projects, but it really shines the most with innovation, rapid prototyping, minimal viable products (MVP) and proof of concepts (POC) because you can develop and iterate very quickly through ideas. Besides reducing development and operations overhead by using managed services, you are also optimising the cost by paying only for actual utilisation. Usually, these types of projects do not have many users, certainly not initially, so paying based on actual users can be significantly more cost-effective than paying for underutilised servers.

The cost-effectiveness makes Serverless very attractive to start-ups that usually need to run very leanly. Having a platform that costs them relevant to the number of users that are ideally generating revenue can really make sense for start-ups.

Serverless can breathe new air into digital transformation projects where a legacy solution has been migrated to a server in the cloud. Typically, some transformation may have already happened, such as spinning off certain components into manage services such as databases. However, at some point, it is going to run into a blocker where a server-based application just cannot be made more cloud-native. This is where Serverless microservices can be an opportunity to start moving smaller features out of the legacy application into independent microservices. Starting with features such as image processing can offer the most value for effort. As the load is reduced on the server, it can be reduced in scale to achieve cost savings.

The advantage of this approach is that it does not need a significant digital transformation effort and budget with unpredictable timelines. It can be broken down into much smaller projects to be handled one at a time. Each one with its own time and cost estimate and far easier to predict effort. This will prove if this approach will be successful without having to commit too many resources initially.

Automated, event-driven pipelines are another great match for Serverless. For example, automated deployment pipelines and image or video processing pipelines are great usecases for Serverless where an event, such as the arrival of a new video file, will trigger the pipeline to start. It then goes through the different microservices to perform what it needs to do.

Netflix is a huge user of this type of capability. When the studios send Netflix a new video file, it triggers a series of events to create all the different compression levels, search tags and other metadata necessary for it to be listed in your Netflix account.

Websites, marketing sites and registration forms work well with Serverless because you are paying only for utilisation so you can keep costs low or relevant to the number of people that are using it. You can easily launch these things and remove them again when they are no longer needed with far fewer security concerns and operational overhead than you might have with WordPress on a server, for example.

When you get to the larger more complex projects that might have thousands or hundreds of thousands or millions of users it really depends on what the projects are doing, but typically you would break this into sections and determine the best architecture for each section Some might be Serverless, some might not be, so you end up with a hybrid solution. A Serverless backend that launches and uses servers or containers on-demand works very well for complex applications. Any activities that Serverless microservices are not appropriate for can be run that way, but everything is still managed with the Serverless system, and the servers and containers are only run for as long as they are needed. For example, AI training clusters can be launched to process large volumes of incoming data, and the cluster can be shut down again once it has completed the processing. All automatically managed with microservices.

To go deeper on this topic and to read many more related topics about Serverless Architecture please buy the book Serverless - Beyond the buzzword here: serverlessbook.co

Serverless - Beyond the buzzword. The book about the strategic impact of Serverless architecture