If you’re a start-up, adopting a Serverless approach to building your apps could well be one of the wisest decisions you’ll ever make. It could offer huge efficiencies in the DevOps resources you need, massively squeeze the timeframe required to bring your product to market and offers a price model perfectly suited to typical start-up cash flow considerations.
Serverless development, like any framework, has its strengths and limitations. But as the ecosystem of components and frameworks develops, the limitations are rapidly being addressed. And the strengths will represent a paradigm shift in the business case for application development.
Shorter development cycles (factor 2-10, see links to case studies below) and elastic costs.
Let’s take Jim as an example. Jim is the CTO of an ambitious Fintech start-up. He’s just had a meeting with Bob the CEO.
“I have good news and bad news”, began Bob. He loves that phrase…“The good news is that we’ve secured the funding. The bad news is that the competition has been moving forward while we have been looking for investors. They’ve announced they will launch their product in 3 months.”
“No way, how are they going to manage that? They only had an MVP last week!”
“I don’t have the details but they must be confident or they wouldn’t have announced a launch date. We’ll have to find a way to come to market at least at the same time. Can you put together a strategy to put a rocket under our DevOps and make it? Let’s sit down tomorrow morning and I’ll look forward to managing to pull it out of the bag again!”
Jim sat in front of a blank piece of paper and mulled the challenge over. Just setting-up the server infrastructure and planning the roll-out would already take up a huge chunk of the time available to him.
We’ll simply have to use some of that funding to outsource everything which is not our DevOps team’s core competencies. Why reinvent the wheel? We don’t try to build our own smartphones.
The team’s core strength was front-end UI/UX rather than back-end and infrastructure. The highly intuitive user interface of the application was already their pride and joy, even at this stage of the development process. A prototype had been tested successfully across quite a number of users.
Another competitive advantage they hoped would mean they would manage to take greater market share than their competitor was the pricing model. By outsourcing payments handling they had found a way to keep overheads lower and had decided to pass that on to end users as an ultra-attractive price point.
As a small team, pretty much everything else was not their specific strength.
That is what Serverless is about. Focusing on core competencies while benefitting from established, optimized and tested infrastructure, architecture, DevOps, and cloud solutions provided by specialized vendors. Another plus is that computing costs are variable and only go up if the number of users increases, significantly reducing risk.
“Of course, the flexibility of the implementation will be limited if we go for a Serverless architecture”, considered Jim.
But that could also be a positive in this case, he quickly decided. He recalled all too clearly a situation he encountered at his previous position. Three developers developed a framework which, at the end of the day, only they could understand. They left the company at one point and as a result further development of the app became impractical.
And vendor lock-in? Yes, he would have to decide on a vendor. “Not ideal in a market where open source technology has proven itself”, he thought.
But if they code it carefully, with the help of Serverless consultants to configure the vendor-native plug-and-play functionalities, the budget that will be saved would be enough to implement the solution 2-3 times – regardless of the vendor. They could also go back to the architecture after launch when time wasn’t so pressed and optimise it as Cloud vendor agnostic. That way vendor-native components could be switched in and out if they wanted to migrate to another provider.
He went to see his CEO.
“We would like to have an additional module for Machine Learning which will give us the cutting edge over the competition. But I read that it is impossible to find such experts”, said Bob when presented with Jim’s project plan.
“No problem. We don’t need Machine Learning experts. We can integrate ready-made Serverless modules. It’s the same principle as using AWS Cognito for user authentication and the other modules we’ve already configured for the app’s other common functionalities. 20 days on top should be enough and we have that time now”.