As a front-end developer, you often need a back-end, either to be able to finish your awesome side project or to create a temporary mock API, until your back-end team completes the API they are working on for a few months. But back-end development is not easy. Writing some Node.js is just a first piece of it, then you need to set up a server and deploy your app. If your side project becomes successful one day, you’ll need to maintain your server, then scale it. But servers are not pets; sometimes they are more like a Godzilla, a creature that can eat all your free time and destroy your entrepreneurial spirit.
Well, there’s another way to deal with the backend: serverless. Serverless still has servers, but as defined by Gojko Adzic, it’s serverless the same way wireless has wires, they are somewhere in the background, but you don’t need to deal with them. The main idea of this workshop is to introduce you to serverless. We’ll start with a simple API and move towards the fully managed GraphQL back-end that scales automatically and costs $0 if no one is using it.
In this workshop you’ll learn the following:
– Create a simple RESTful API with API Gateway and AWS Lambda;
– Learn the essential serverless patterns useful for front-end developers, including APIs, file manipulation services, GraphQL services, etc.;
– Learn how to deploy a front-end app with CDN and autoscaling to the AWS infrastructure;
– Learn how to build a real-time managed GraphQL backend.
This workshop has the following prerequisites:
– Node.js, version 8+ is recommended;
– AWS account (workshop tasks will cost less than 0);
– JavaScript experience, including knowledge of at least one modern SPA framework (React, Angular 2+ or VueJS) and at least basic understanding of Node.js with NPM.
Workshop will be held in English by Slobodan Stojanović. He is based in Belgrade and is the JS Belgrade meetup co-organizer, he is the AWS Serverless Hero, Claudia.js core team member, and co-author of “Serverless Applications with Node.js” book, published by Manning Publications.