Talks

Verona, November 16th 2018

Alessandro Aglietti

Event loop tales on I/O bound Node.js applications

At brumbrum.it we have a zoo of microservices, interaction between them is obviously carried out through REST APIs. Our www microservice, aka frontend, is an isomorphic/universal JavaScript application bounded between users and the zoo, lots of 1:n HTTP requests there. Taming this type of Node.js application in production to survive traffic spikes and other wild behaviors brought us to deeply understand Node.js non-blocking model: it's too easy to react to problems with CDN and infamous memory/thread allocations. Node.js non-blocking model comes with simplicity in mind. In many cases this simplicity allows you to build apps quickly. But when you reach the edge, simplicity means responsibility. Let's dive in!

Porting your Node.js app to serverless in 30 minutes

This live-coding session will guide you through the process of migrating an existing Express application to AWS Lambda. We will analyze the existing application, decompose it into individual microservices, adapt authentication, frontend, tests, and data model, and finally deploy everything to the Cloud. Throughout this step-by-step process, you will learn the benefits of serverless and how it will change the way you think of scalability, availability, security, infrastructure management, and cost optimization.

Node.js: The Road to Workers

Workers, and threading support in general, have been one of the most frequently requested features for Node.js over the last years. Finally, the finishing line is in sight and we’re pretty excited to have experimental support available! This talk will tell you everything around the API, features, use cases & alternatives, our roadmap, and the technical and social challenges that we had to overcome to make it happen, as well as an overview over exciting changes in Node.js 10 & 11!

GraphQL and me

You've properly heard the hype surrounding GraphQL. But what kind of problems can it solve? This is the story of why we chose GraphQL to power the Vogue and GQ websites and the problems it help solve. You'll learn about some of the ways in which GraphQL can help improve your application and understand why you might implement it.

Node.js as a feature-flipping supervisor through Git

Let's imagine you run a complex service or app, and you have to manage a backend solution that grows fast. You have to find a way to handle the releases cycle. It means taking care of restarting services, migrating databases, expiring caches, as well as notifying client's apps for the update. Now, add a new layer of complexity: to quickly try-and-fail, you also use a feature-flipping architecture that allows you to run tests on various client segments. Even for a limited amount of time. And, because your team is great, you deliver several times a day. To address all those needs, Node.js is a great candidate. Properly hooked behind a Git repository that will allow you to push your codebase and configs, we can conceive a modular system to manage your deployment process. Based on Streams and Functional Programming, we will present a global solution capable to deliver your codebase and reprocess its configuration on-the-fly. With a simple git push. Let's see what a modern, robust, and distributed deployment platform should look like.

Monoliths always pay their debts

You have just created a new small and disruptive startup or you are an enterprise building a new product. To speed up the initial development you have built a monolith but few months after your product has become widely adopted. Now you have a problem. Your server is not ready to handle all that load and you need to solve the scalability issue quickly. Too bad that you have developed your app as a single monolith since the beginning, now split it to microservices would be very hard because of cross-dependencies and mixed logic. Enter Fastify, a new web framework for Node.js. Fastify is focused on providing the best developer experience with the least overhead through a powerful plugin architecture. In this talk, we will build a new disruptive startup with Fastify, starting with a monolith and later migrate to a microservices architecture, by building a future-proof codebase.