Sign up to be notified of the release of the reInvent 2020 Review, including live Q&A with Yan Cui on Friday 11 December 12:30 PST, and other Homeschool by Senzo courses and promotions.

Thank you!

Thank for you signing up. Check your inbox for updates and access to the platform.

Node.js for Serverless

1 March 2021 Book Now

Node.js is the most popular language for writing Serverless Cloud Functions across all cloud providers, with a broad ecosystem of tutorials, blog posts, plugins and tooling available. This course is aimed at existing developers who are looking to leverage that ecosystem and write cloud functions in Node.js. Whether you're a front-end Javascript, Python, Java, .Net or Go developer, this course gives you the skills to work with Node.js on Serverless platforms.

The course is platform agnostic, focusing on Node.js fundamentals and Serverless concepts. You will cover the Node.js you need to know to write effective and performant cloud functions for any platform. You will write your own serverless functions runtime, learning about the language, the developer experience and the platforms as you go.

Upcoming

1 March 2021 Book Now

Node.js the Language

In this module we'll introduce you to Node.js and JavaScript, including the following.

  • An introduction to the JavaScript type system, including classes.

  • Asynchronous IO in Node.js covering Node.js streams, callbacks, promises, and async/await

  • Package management, how to use a package manager, and maintaining a monorepo.

  • Node.js standard library and how it extends JavaScript.

Woman Sitting
Man Walking

Putting it to work with Serverless

Now we start to put that Node.js knowledge to work. We will build our own mock Functions as a Service environment you run locally. This will teach you basic serverless event driven concepts, whilst reinforcing your Node.js knowledge.

You will build a basic function runtime that can handle asynchronous and synchronous invocation, alongside a mocked object storage service.

This will leverage key features of Node.js including classes, streams, promises and async/await.

You will also build your own packages in monorepo, publish them to a private package repository, and write some basic tests.

Bonus content

Here we'll focus on the broader Node.js ecosystem and upcoming features in Node.js. Topics included:-

  • ES Modules, the new module system for Node.js

  • JavaScript bundlers, and how to optimise deployment size

  • Overview of all the major cloud provider FaaS platforms and how they differ. With demos.

Woman Standing

Structure

The class is available to start whenever you want it. There are 2 primary modules of course materials, with each module taking about 4-5 hours to complete. Each week will follow this structure:

  • Full course available on purchase. (Once course is available in January 2021)

  • Always available: Peer chat and exercise sharing with your instructor & others taking the Node.js course. You also have access to our general chat channels.

  • Every Two Weeks: Live recap and Q&A sessions (~1 hour) with the instructor. Times will be notified on the Node.js for Serverless Discord channel.

  • The Q&A session is streamed within the Homeschool platform, with questions submitted via chat. Q&A recordings are added to the platform and all questions are logged with a timecode for each is published after the streams end, in case you miss them.

All course materials are permanently available on your Homeschool account after they've been released.

What you'll need...

A brief list of what you will need to do this class:

  • Your own laptop with a terminal emulator. eg iTerm2, Microsoft Terminal
  • A code editor or IDE. eg VS Code (preffered), Sublime, VIM, Emacs, Visual Studio, IntelliJ, etc
  • A free Github account
  • (Only requried for bonus lectures) An active Cloud Provider account. All examples will work on the Free Tier of any Cloud Provider if you have a new account

Who it's for...

  • Existing software developers who are looking to write cloud functions in Node.js, whether you're a front-end Javascript, Python, Ruby, Java, .Net or Go developer.