NODEJS

Node.js

Solid foundations for developing back-end applications in JavaScript

✓ Official training SFEIR InstituteLevel Intermediate⏱️ 3 days (21h)

What you will learn

  • Understand the architecture and core concepts of Node.js
  • Master asynchronous programming, events, and streams
  • Implement robust error handling
  • Create network applications (TCP/UDP and HTTP/HTTPS servers)
  • Develop RESTful web back-ends using popular frameworks like Express.js
  • Interact with file systems and databases
  • Package and deploy Node.js applications

Prerequisites

  • Having completed the JavaScript: The fundamentals of the language course or having equivalent knowledge

Target audience

  • Developers, Integrators, Software architects, Technical project managers

Training Program

10 modules to master the fundamentals

Topics covered

  • →What is Node.js?
  • →Tools: node and npm
  • →Node.js development environment
  • →Node.js architecture concepts: IO, asynchronous, non-blocking, concurrency, event-loop, scalability

Activities

Installation of Node.js and a development environment

Demonstration of the event loop through a first asynchronous / non-blocking program

REPL

Topics covered

  • →Event-based architecture of Node.js
  • →Event and EventEmitter
  • →Synchronous vs Asynchronous
  • →Managing multiple or single events
  • →Error handling

Activities

Development of a custom EventEmitter

Topics covered

  • →Examples of streaming data managed by Node.js
  • →The different types of Streams
  • →Internal buffers
  • →Pipelines

Activities

Consume a Readable stream (http, fs)

Write to a Writable stream (fs)

Use a Duplex stream (net.Socket)

Use a Transform stream (zlib)

Topics covered

  • →The different types of errors
  • →Error handling in synchronous APIs
  • →Error handling in asynchronous APIs
  • →Assertions
  • →Logging via the Console API
  • →Debugging a Node.js program

Activities

Error handling in synchronous APIs

Error handling in asynchronous APIs

Debugging a Node.js program in an IDE or Chrome

Topics covered

  • →Global Object and inter-module scope
  • →Globally accessible objects
  • →Modules, scopes, and file management
  • →Core modules
  • →Main module
  • →Module loading algorithm and module cache
  • →NPM and third-party modules

Activities

Using the Global object

Globally accessible objects: process

Using core modules: timer, OS, Util, Path, ...

Creating an internal application module

Creating a Node.js project via NPM and installing popular modules

Topics covered

  • →Net module for creating TCP servers and clients
  • →UDP/Datagram module for creating UDP/Datagram servers and clients

Activities

Creating TCP clients / server

Creating UDP/Datagram clients / server

Topics covered

  • →http, https, and http/2 modules for creating servers and clients
  • →url module to handle http requests

Activities

Creating http, https, and http/2 servers and clients for a website

Creating http, https, and http/2 servers and clients for a RESTful webservice

Topics covered

  • →The fs module and its proximity to POSIX
  • →Synchronous APIs vs Asynchronous APIs

Activities

Interacting with the file system via synchronous and asynchronous APIs

Topics covered

  • →Data management with Relational (MySQL) or NoSQL (Mongo, Redis) databases
  • →Middleware management (connect, expressjs)
  • →Template management (ejs)

Activities

Creating a static and dynamic web back-end with express.js

Creating a RESTful API with express.js

Topics covered

  • →NPM: main commands
  • →NPM: packaging a module
  • →Different deployment modes for a Node.js project
  • →Forever and PM2 modules

Activities

Packaging a library

Dockerizing a Node.js web application

Quality Process

SFEIR Institute's commitment: an excellence approach to ensure the quality and success of all our training programs. Learn more about our quality approach

Teaching Methods Used
  • Lectures / Theoretical Slides — Presentation of concepts using visual aids (PowerPoint, PDF).
  • Technical Demonstration (Demos) — The instructor performs a task or procedure while students observe.
  • Guided Labs — Guided practical exercises on software, hardware, or technical environments.
Evaluation and Monitoring System

The achievement of training objectives is evaluated at multiple levels to ensure quality:

  • Continuous Knowledge Assessment : Verification of knowledge throughout the training via participatory methods (quizzes, practical exercises, case studies) under instructor supervision.
  • Progress Measurement : Comparative self-assessment system including an initial diagnostic to determine the starting level, followed by a final evaluation to validate skills development.
  • Quality Evaluation : End-of-session satisfaction questionnaire to measure the relevance and effectiveness of the training as perceived by participants.

Upcoming sessions

February 18, 2026
Distanciel • Français
Register
June 24, 2026
Distanciel • Français
Register
September 23, 2026
Distanciel • Français
Register

2,100€ excl. VAT

per learner