Spend time on the things that really matters

The sad truth is, the tech doesn’t matter. Well, at least not to the user. The user doesn’t care if your backend is written in Java, Go or NodeJS. They don’t care if it uses containers, or serverless, running on VMs on or premise. The user cares about their experience; is it valuable to them, does it work well and does it look good?

In the early days of a tech startup, you’re testing out new hypotheses all the time. You come up with a new theory or idea and you need to test it quick to verify you’re building something useful. The faster you can build and test features, the faster that feedback loop will be and the easier it will be to find exactly what your users want from your product.

When the team building your new product is really small, managing complex infrastructure is unlikely to be an effective use of your time. Any work that is spent managing an application rather than building it is overhead of your product. It is however important to remember that CI/CD is incredibly useful. It helps you move even faster.

With serverless, you can focus on application logic. Every feature on a website or mobile app translates to one or more API calls and therefore a serverless function or functions. Given that each serverless function is only responsible a particular API call, the code can be much simpler than it’s Microservice or Monolthic counter part. Much of the work I’ve done using serverless uses barely any libraries.

You’ve suddenly got a huge amount of traffic? Don’t worry — serverless can handle that for you out of the box. No need to manage autoscaling groups for servers or containers. You can also integrate with on demand databases such as AWS DynamoDB or MongoDB Stitch, which can also scale automatically with demand.