NodeJS with MongoDB

Beginner Course

Build web applications with real-time,
two-way connections.

5 Days / 40 Hours / 24 Modules
+ 3 month coaching + 1 year eLearning access

NodeJS with
Beginner Course

Build web applications
with real-time,
two-way connections
5 Days / 40 Hours / 24 Modules
+ 3 month coaching + 1 year eLearning access

Master the fundamentals of NodeJS and deep-dive into the techniques of it.

In this course, we focus on the field of NodeJS application development and describe the processes, algorithms, and tools for one to be a successful practitioner of NodeJS development. Students will be exposed to MongoDB alongside NodeJS
Key Learning Outcomes

This course will also give students a chance to understand the fundamental issues and challenges of machine learning which include data, model selection, and model complexity. This course will equip you with the necessary skills needed to excel in this field. By the end of the training program, you will be able to:

  • Master NodeJS concepts and implement them your projects
  • Deploy your Node apps to production
  • Store data with MongoDB
  • Write efficient and well-performing queries to fetch data in the format you need it
  • Use MongoDB to its full potential in future projects

Course modules covered in the NodeJS with MongoDB course
Day 1 - Introduction to "Modern (ES5)" JavaScript, Functional Programming, Object Oriented Programming - OOP, Error Handling, Node Projects, HTTP

Introduction to "Modern (ES5)" JavaScript

  1. Basic language features
  2. JavaScript types: Number, String, Boolean
  3. Variable declaration using let
  4. Operators – arithmetic, assignment, comparison
  5. Decision Making – if, else, switch case, double equal ==, triple equal ===
  6. Loops – for, while, do ... while
  7. Arrays, iterating arrays using for … in

Functional Programming

  1. Functions
  2. Returning functions
  3. Parameterized functions
  4. Default function parameters
  5. REST parameters
  6. Anonymous functions and IIFE
  7. Lambda functions
  8. Lambda statement
  9. Lambda expression
  10. Function hoisting
  11. Generated functions

Object Oriented Programming - OOP

  1. Java Script Objects
  2. Object creation – Literal method, Using Object, Function constructor
  3. Properties, Methods
  4. Comparing Objects
  5. Object de-structuring
  6. JavaScript call, apply and bind
  7. Class
  8. Creating Objects
  9. Constructor
  10. Inheritance
  11. Method Overriding
  12. Collections – Map, Set
  13. Promise
  14. Importing a module
  15. Exporting a module

Error Handling

  1. Syntax Errors
  2. Runtime Errors
  3. Logical Errors
  4. Throwing Exceptions
  5. Exception handling
  6. Custom Errors

Node Projects

  1. The JavaScript Repository
  2. Node Package Manager (NPM)
  3. Creating a JavaScript project
  4. The package.json configuration file
  5. Installing Packages Global
  6. Installing Packages Locally
  7. Adding dependency in package.json
  8. Scripting through package.json
  9. Webpack Project


  1. The HTTP protocol
  2. Creating web server
  3. Handling http requests
  4. Sending requests
  5. Building an HTTP server
  6. Rendering a response
  7. Processing query strings
  8. Using Representational State Transfer
  9. Configuring TLS
Day 2 - File System, Buffers, Streams, and Events, Modules and Unit Testing , Events, Express

File System

  1. Synchronous I/O vs. asynchronous I/O
  2. Path and directory operations
  3. __dirname and __filename
  4. Synchronous file reads
  5. Synchronous file writes
  6. Asynchronous file reads using Promises
  7. Asynchronous file writes using Promises

Buffers, Streams, and Events

  1. Using buffers for binary data
  2. Flowing vs. non-flowing streams
  3. Streaming I/O from files and other sources
  4. Processing streams asynchronously
  5. Configuring event handlers

Modules and Unit Testing

  1. Modularization
  2. The CommonJS and RequireJS specifications
  3. Defining modules with exports
  4. Modules are singletons
  5. Creating a package
  6. Module scope and construction
  7. Unit testing frameworks
  8. What to test and how to test it
  9. Building unit tests with Mocha


  1. What is Event Emitters
  2. When to use Event Emitters
  3. Binding Functions to Events
  4. Event Requests
  5. Event Listening
  6. What are callbacks
  7. Callback-last
  8. Callbacks: Error-first
  9. Errors in Event Emitters
  10. Uncaught Exceptions
  11. Using Domains


  1. The model-view-controller pattern
  2. Defining Jade and Handlebars templates
  3. Building a front-end controller
  4. Defining routes
  5. Creating actions
  6. Configuring Express to use Handlebars
  7. Using REST
  8. Reading POST data
  9. Building Handlebars helpers
  10. Adding middleware
Day 3 - Data Sources, MongoDB, Documents and Collections, Data Modelling

Data Sources

  1. How Node.js connects to databases
  2. Configuration and platform setup
  3. RDBMS databases and NoSQL databases
  4. Connecting to RDBMS and NoSQL databases
  5. Performing CRUD operations
  6. Building client requests to web services


  1. The current SQL/NoSQL landscape
  2. Document-oriented vs. other types of storage
  3. Mongo's featureset
  4. Common use-cases
  5. Introduction to JSON

Documents and Collections

  1. Creating documents
  2. Managing documents in collections
  3. Iterating over documents
  4. Simple Queries
  5. Field equality tests
  6. Operators available
  7. Projections
  8. Limiting results and paging

Data Modelling

  1. Create Database
  2. Drop Database
  3. Create Collection
  4. Drop Collection
  5. Data Types
  6. Insert Document
  7. Query Document
  8. Update Document
  9. Delete Document
Day 4 - Queries, Simple Updates and Delete, More Complex Types of Queries, Indexing, Mongo Replication and Sharding


  1. Field equality tests
  2. Operators available
  3. Projections
  4. Limiting Records
  5. Paging
  6. Sorting Records

Simple Updates and Delete

  1. Field updates
  2. Field insertions
  3. Field removal
  4. Document deletion
  5. Existential field values

More Complex Types of Queries

  1. Existential field values
  2. Aggregations and groups
  3. Aggregations and groups in hierarchical data
  4. Updates and Arrays
  5. Altering array field elements
  6. Insertion to array fields
  7. Removing from array fields


  1. The primary index and the _id field
  2. Problems requiring an index
  3. Defining secondary indexes
  4. Compound indexes
  5. Indexing 2
  6. Index selection
  7. Index hints
  8. Covering indexes
  9. Index storage size
  10. Indexes effect insertion and update speeds

Mongo Replication and Sharding

  1. Configuring replication
  2. Configuring sharding
  3. Accessing clustered data from client APIs
  4. Latency and consistency in replicated and sharded Mongo
Day 5 - Creating a REST API with Node.js, MapReduce, Mongo Security, Socket Programming

Creating a REST API with Node.js

  1. Introduction
  2. Setting up Node Project with MongoDB for API
  3. Mongo RESTful API
  4. CRUD operations through REST
  5. Adding Data (POST requests in Node)
  6. Retrieving Data (GET requests in Node)
  7. Updating Data (PUT requests in Node)
  8. Deleting Data (DELETE requests in Node)
  9. Authentication and Security
  10. Setting up our User Model for Authentication in Node
  11. Authentication Middleware and Securing Resources in Node


  1. Explanation of MapReduce
  2. Types of logic that can be expressed as MapReduce declarations
  3. Mapping documents
  4. Reducing values

Mongo Security

  1. Authorization and securing collections, documents
  2. The limits of Mongo's authorization scheme
  3. Authentication
  4. Mongo in the enterprise

Socket Programming

  1. Network Structure
  2. Classifications and Topologies
  3. Switching and Routing
  4. Gateway, Repeater, Hub, Bridge
  5. OSI & TCP/IP Protocol Layers
  6. Physical & Logical Addresses
  7. ARP & RARP Networking and TCP/IP Applications
  8. Internet Protocol
  9. Routing Protocol and IP Datagram
  10. Error and Control Messages (ICMP) UDP
  11. Transfer Control Protocol
  12. TCP Networking Applications
Our Training Methodology
Program Key Highlights

40 hours of Remote Online Learning
80 Additional Self Learning Hours
12 Live Hands-on Projects
Certified by International Body
Mentorship with Industry Experts
Designed for Beginners & Professionals
Your Instructor
Thayanithy Jegan
CTO & Co-Founder of Thulija Technologies,
Certified Trainer and Consultant

A seasoned technology professional with over 17 years of industry experience as a software developer, solutions architect and technology consultant for major organizations.
Thayanithy Jegan has trained executives and developers in companies such as Maxis, IFCA, SWIFT, PSDC, DHL, Standard Chartered, Infineon Technologies, Siemens and Bank Negara to name a few to break into various technology stacks and as well as data science, big data, and artificial intelligence.
He has led major projects with clients such as Suruhanjaya Syarikat Malaysia (SSM), MYCOID, Kementerian Kerja Raya, Ministry of Education (MOE), Universiti Malaya, Perfisio Solutions, Kementerian Perdagangan Antarabangsa dan Industri, amongst others. He has also served as a Consultant for MIMOS Berhad, a Research and Development organisation that functions as an advisor to the Malaysian Government on technologies, policies and strategies relating to IT.

Get Professionally Certified

Upon successfully completing this program, participants will be awarded the Professional Certification in Python Data Science by International Council for Technology Certifications (ICTC).
This award is a validation to the efforts taken to master the domain expertise that will set you apart from your competition.
Be a part of the global network of data science professionals and join the community across sectors.
NodeJS with MongoDB Training FAQs
1Do I Get A Certificate At The End Of The Course?

Yes.You will get a certificate at the end of the course from Thulija Academy.

2How Will The Labs Be Conducted?

Labs will be conducted through online means. Recorded playbacks are provided to participants after the sessions are over.

Get in Touch With Us Today!

This training program is suitable for anyone who intends to enter into the field of Software Development. This program is being conducted in Malaysia and can be joined by anyone, anywhere in the world remotely.
Program Fee

RM 3,700.00

One-time fee. One year access to course materials.

Please fill in the form and a Program Advisor will reach out to you. You can also reach out to us at or +60123661502
Contact us on Whatsapp for more enquiries