LEARN FROM THE BEST TRAINERS IN THE WORLD

FREE WORKSHOPS AT NODE CONGRESS

The workshops below are the complimentary part of full tickets.

All Full Ticket holders will get an email with a code to register to these workshops.

The recordings of most workshops will be shared with full ticket holders after the conference. Workshops will be run remotely via Zoom.

Alex Korzhikov

Decomposing Monolith NestJS API into GRPC Microservices

The workshop focuses on concepts, algorithms, and practices to decompose a monolithic application into GRPC microservices. It overviews architecture principles, design patterns and technologies used to build microservices. It covers the theory of the GRPC framework and protocol buffers mechanism, as well as techniques and specifics of building isolated TypeScript services in the Node.js stack. The workshop includes a live use case demo of decomposing an API application into set of microservices. It fits the best architects, tech leads, and developers who want to learn microservices patterns.

Table of contents
  • - Patterns - DDD, Microservices
  • - Technologies - GRPC, Protocol Buffers, Node.js, TypeScript, NestJS, Express.js, PostgreSQL, Turborepo
  • - Example structure - monorepo configuration, packages configuration, common utilities, demo service
  • - Practical exercise - refactor monolith app
Workshop level

Advanced

Workshop schedule & location

Date: April 18. Time: 17:00. Remote.

Matteo Collina

Node.js Masterclass

Have you ever struggled with designing and structuring your Node.js applications? Building applications that are well organised, testable and extendable is not always easy. It can often turn out to be a lot more complicated than you expect it to be. In this live event Matteo will show you how he builds Node.js applications from scratch. You’ll learn how he approaches application design, and the philosophies that he applies to create modular, maintainable and effective applications.

Workshop level

Intermediate

Workshop schedule & location

Date: April 19. Time: 17:00. Remote.

Michele Riva

JavaScript-based full-text search with Orama everywhere

In this workshop, we will see how to adopt Orama, a powerful full-text search engine written entirely in JavaScript, to make search available wherever JavaScript runs. We will learn when, how, and why deploying it on a serverless function could be a great idea, and when it would be better to keep it directly on the browser. Forget APIs, complex configurations, etc: Orama will make it easy to integrate search on projects of any scale.

Prerequisites
Workshop level

Intermediate

Workshop schedule & location

Date: April 20. Time: 17:00. Remote.

Claudio Wunder

Node.js: Landing your first Open Source contribution & how the Node.js project works

This workshop aims to give you an introductory module on the general aspects of Open Source. Follow Claudio Wunder from the OpenJS Foundation to guide you on how the governance model of Node.js work, how high-level decisions are made, and how to land your very first contribution. At the end of the workshop, you'll have a general understanding of all the kinds of work that the Node.js project does (From Bug triage to deciding the Next-10 years of Node.js) and how you can be part of the bigger picture of the JavaScript ecosystem

Table of contents
  • - A recap of some of GitHub UI features, such as GitHub projects and GitHub Issues
  • - We will cover the basics of Open Source and go through Open Source Guide
  • - We will recap Markdown
  • - We will cover Open Source governance and how the Node.js project works and talk about the OpenJS Foundation
  • - ncluding all the ways one might contribute to the Node.js project and how their contributions can be valued
  • - We will cover Issues from the nodejs/nodejs.dev as most of them are entry-level and do not require C++ or deep technical knowledge of Node.js.
  • - We still recommend enthusiast attendees that want to challenge themselves to "Good First Issues" from the nodejs/node (core repository) if they wish
  • - We're going to allow each attendee to choose an issue or to sit together with other attendees and tackle issues together with Pair Programming through VS Code Live Share feature
  • - The technologies used within nodejs/nodejs.dev are React/JSX, Markdown, MDX and Gatsby. (No need any knowledge of Gatsby, as most of the issues are platform agnostic)
Prerequisites

Basic understanding of Git & GitHub interface

  • Professional/Intermediate English knowledge for communication and for allowing you to contribute to the Node.js org (As all contributions require communication within GitHub Issues/PRs)
  • The workshop requires you to have a computer (Otherwise, it becomes difficult to collaborate, but tablets are also OK) with an IDE setup, and we recommend VS Code and we recommend the GitHub Pull Requests & Issues Extension for collaborating with Issues and Pull Requests straight from the IDE

Workshop level

Basic

Workshop schedule & location

Date: April 21. Time: 17:00. Remote.

Isaac Mann

Node Monorepos with Nx

Multiple apis and multiple teams all in the same repository can cause a lot of headaches, but Nx has you covered. Learn to share code, maintain configuration files and coordinate changes in a monorepo that can scale as large as your organisation does. Nx allows you to bring structure to a repository with hundreds of contributors and eliminates the CI slowdowns that typically occur as the codebase grows.

Table of contents
  • - Lab 1 - Generate an empty workspace
  • - Lab 2 - Generate a node api
  • - Lab 3 - Executors
  • - Lab 4 - Migrations
  • - Lab 5 - Generate an auth library
  • - Lab 6 - Generate a database library
  • - Lab 7 - Add a node cli
  • - Lab 8 - Module boundaries
  • - Lab 9 - Plugins and Generators - Intro
  • - Lab 10 - Plugins and Generators - Modifying files
  • - Lab 11 - Setting up CI
  • - Lab 12 - Distributed caching
Workshop level

Appropriate for beginners and experts.

Workshop schedule & location

Date & time: April 6, 16:00-19:00 CET. Remote.

Asaf Shen

0 to Auth in an Hour Using NodeJS SDK

Passwordless authentication may seem complex, but it is simple to add it to any app using the right tool.

We will enhance a full-stack JS application (Node.JS backend + React frontend) to authenticate users with OAuth (social login) and One Time Passwords (email), including:

  • User authentication - Managing user interactions, returning session / refresh JWTs
  • Session management and validation - Storing the session for subsequent client requests, validating / refreshing sessions

At the end of the workshop, we will also touch on another approach to code authentication using frontend Descope Flows (drag-and-drop workflows), while keeping only session validation in the backend. With this, we will also show how easy it is to enable biometrics and other passwordless authentication methods.

Table of contents
  • - A quick intro to core authentication concepts
  • - Coding
  • - Why passwordless matters
Prerequisites

  • IDE for your choice
  • Node 18 or higher
  • ChatGPT (just kidding 😊)

Workshop level

Intermediate.

Workshop schedule & location

Date & time: April 10, 16:00-17:00 CET. Remote.

Chad Carlson

Decoupling in Practice

Deploying decoupled and microservice applications isn't just a problem to be solved on migration day. Moving forward with these architectures depends completely on what your team's workflow experience will look like day-to-day post-migration.

The hardest part of this can often be the number of vendors involved. Some targets are best suited for specific frontend frameworks, while others are more so for CMSs and custom APIs. Unfortunately their assumptions, workflows, APIs, and notions of security can be quite different. While there are certain advantages to relying on a strict contract between apps – where backend and frontend teams work is limited to a single vendor – this isn't always realistic. This could be because you're still experimenting, or simply the size of your organization doesn't allow for this kind of specialization just yet.

In this workshop, you'll have a chance to explore a different, single vendor approach to microservices using Strapi and Next.js as an example. You'll deploy each app individually, establishing a workflow from the start that simplifies customization, introducing new features, investigating performance issues, and even framework interchangeability from the start.

Structure:

  • Getting started
  • Overview of Strapi
  • Overview of Platform.sh workflow
  • Deploying the project
  • Switching services
  • Adding the frontend
Workshop schedule & location

Date & time: April 11, 16:00-18:00 CET. Remote.

Griffin Smith, Nick Marino

Scaling up Your Database With ReadySet

The database can be one of the hardest parts of a web app to scale. Many projects end up using ad-hoc caching systems that are complex, error-prone, and expensive to build. What if you could drop in a ready-built caching system to enable better throughput and latency with no code changes to your application?

Join developers Griffin Smith and Nick Marino to see how you can change one line of config in your app and use ReadySet to scale up your query performance by orders of magnitude today.

Workshop schedule & location

Date & time: April 12, 16:00-17:00 CET. Remote.

Trainers

Alex Korzhikov
Instructor, Mentor, Netherlands

My primary interest is self development and craftsmanship. I enjoy exploring technologies, coding open source and enterprise projects, teaching, speaking and writing about programming - JavaScript, Node.js, TypeScript, Go, Java, Docker, Kubernetes, JSON Schema, DevOps, Web Components, Algorithms 👋 ⚽️ 🧑‍💻 🎧

Full Info
matteo-collina
Fastify
Matteo Collina
Platformatic, Italy

Matteo is the Co-Founder and CTO of Platformatic.dev with the goal to remove all friction from backend development. He is also a prolific Open Source author in the JavaScript ecosystem and modules he maintain are downloaded more than 12 billion times a year.

Previously he was Chief Software Architect at NearForm, the best professional services company in the JavaScript ecosystem. In 2014, he defended his Ph.D. thesis titled "Application Platforms for the Internet of Things".

Matteo is a member of the Node.js Technical Steering Committee focusing on streams, diagnostics and http. He is also the author of the fast logger Pino and of the Fastify web framework.

Matteo is an renowed international speaker after more than 60 conferences, including OpenJS World, Node.js Interactive, NodeConf.eu, NodeSummit, JSConf.Asia, WebRebels, and JsDay just to name a few. He is also co-author of the book "Node.js Cookbook, Third Edition" edited by Packt.

In the summer he loves sailing the Sirocco.

Full Info
michele-riva
Architecture
Michele Riva
OramaSearch, Italy

I'm a passionate and experienced software engineer, Google GDE, and Microsoft MVP working full-time on open-source software. I currently work as a CTO at OramaSearch while traveling the world to speak at international conferences. I am always up for speaking about software, philosophy, photography... or literally whatever comes to your mind!

Claudio Wunder
OpenJS Foundation, Germany

Claudio Wunder is a Senior Software Engineer at HubSpot and works on the experimentation and tracking team. He's also a member of the GNOME Foundation and part of the Cross Project Council at the OpenJS Foundation. He mentors, coaches, and contributes to open-source projects in his free time.

Isaac Mann
Nx, USA

Isaac is an Architect at Narwhal Technologies. He helps maintain the documentation for Nx at nx.dev and has created two video courses available at nxplaybook.com. Isaac is an Instructor at egghead.io with a focus on component design and xstate.

He loves finding ways for computers to do what they're good at, so that people can do what they're good at. His passions include designing component interfaces, streamlining user experiences and training developers.

Asaf Shen
Descope, Israel

Asaf is Lorem Ipsum Engineer at Descope (he will explain the job title during the workshop). Asaf enjoys solving complex problems, working with people, staring up at the stars, and not taking himself too seriously.

Chad Carlson
Platform.sh, USA

Chad Carlson manages the Developer Relations team at Platform.sh. Chad spent a large portion of his professional career in academia, where he worked primarily in vision science laboratories using Python to study the human visual system: how we detect motion, how we understand natural image statistics, and its evolutionary origins.

Today he can typically be found writing, cooking, or working on projects in Python, Node.js, Go, and whatever new language Platform.sh starts support for and wants another pair of eyes on.

Griffin Smith
ReadySet, USA

Griffin Smith is the dataflow tech lead at ReadySet. They spent the first decade of their career as a full-stack application and data pipeline engineer, where they developed a deep dissatisfaction with the current offerings in the database world, and passion for making the experience of using databases easier and more delightful for application engineers. They joined ReadySet in 2020 as the second full-time hire to make that vision a reality. In their spare time, Griffin likes to play music and ride bikes around Brooklyn, NY.

Nick Marino
ReadySet, USA

Nick Marino is a backend developer at ReadySet, where he helps build the Rust code that powers ReadySet’s caching systems. In his past career, he’s had extensive experience writing Erlang code, and has worked on database systems at Basho and Datometry, as well as a variety of telecom systems at other companies. He lives in Rochester, NY with his spouse Tasha and his dog Astrid, and he enjoys spending his spare time reading, playing cello, and practicing aerial arts at the local circus school.