Course overview
- Provider
- Udemy
- Course type
- Paid course
- Level
- All Levels
- Duration
- 47 hours
- Lessons
- 424 lessons
- Certificate
- Available on completion
- Course author
- Andrei Neagoie
-
- Build enterprise level Node applications and deploy to the cloud (AWS)
- Learn to build secure and performant, large scale applications like a senior backend developer
- Lead NodeJS projects by making good architecture decisions and helping others on your team
- Using NodeJS, build production grade apps including REST APIs and GraphQL APIs
- Work with real life data and SpaceX API to build a NASA launch system, discover new planets that may contain life + other projects
- Authentication, File I/O, Databases (SQL, MongoDB), Express Framework, Sockets, plus many other important topics a backend developer should know
- Build a MERN (MongoDb, Express, React, Node) fullstack app and deploy to production
- Load balancing, Monitoring, CI/CD, and Zero Downtime Deployment
- Become the top 10% Node Developer. Learn REALLY advanced topics!
- Focus on security best practices throughout the course so you can be confident with your deployments
- Master the latest ecosystem of a Backend NodeJS Developer from scratch
Description
Just released with all new NodeJS best practices and trends for 2022! Join a live online community of over 600,000+ developers and a course taught by industry experts that have actually worked both in Silicon Valley and Toronto with Node.js.
Using the latest version of Node, this course is focused on efficiency and turning you into a Back End or Fullstack developer. Never spend time on confusing, out of date, incomplete tutorials anymore! Graduates of Andrei’s courses are now working at Google, Tesla, Amazon, Apple, IBM, JP Morgan, Facebook, + other top tech companies for a reason.
We guarantee you this is the most comprehensive online resource on NodeJS. This project based course will introduce you to all of the modern toolchain of a Node JS developer in 2022. Along the way, we will build a massive NASA Space launch application using Node.js, Express Framework, RESTful APIs, GraphQL, and much more! This is going to be a Fullstack MERN app. We will also build many other mini projects along the way so you feel confident deploying any Node.js project to production in the future by yourself!
All code is going to be provided step by step and even if you don’t like to code along, you will get access to all the code from the projects we build so anyone signed up for the course will have their own project to put on their portfolio right away.
The curriculum is going to be very hands on as we walk you from start to finish of releasing a professional (performant and secure) Node.js project all the way into production. We will start from the very beginning by teaching you Node basics and then going into advanced topics so you can make good decisions on architecture and tools on any of your future NodeJS projects. The goal is to turn you into a senior backend developer!
Finally, this course will be constantly evolving and updating as the landscape changes. Just as the Node ecosystem evolves, we want this course to be constantly updated with lectures and resource for you to come back to, in order to find the latest Node best practices anytime in the future.
Here is what the course will cover:
1. Foundations
Focus on Node internals
Libuv, threads, processes, event loop
Asynchronous programming
Node vs PHP vs Python
Observer Design Pattern
Event Emitters
2. Module System
The require Function
Creating Your Own Modules
CommonJS vs ECMAScript (ES6) modules
Module Caching
Using index.js
3. Package Management
NPM: The Node Package Manager
Creating Your Own Packages
Package And the NPM Registry
Third Party Modules
The node_modules Folder
Semantic Versioning
package-lock.json And Versioning
Vulnerabilities in Dependencies
4. File I/O: Planets Project
Exploring Exoplanets With Node
Exploring Kepler Space Telescope Data
Working With Streams
Streaming Large Data Files
Parsing Our Planets Data
Working With CSV Files
Finding Habitable Planets
5. Web Servers
What is a Web Server?
HTTP Responses and Requests
HTTP APIs and Routing, Parameterized URLs
Same Origin Policy, CORS
Requests and Responses as Streams
6. Express.js
Express vs Next.js vs Koa
Route Parameters
Model View Controller (MVC) pattern
Postman and Insomnia
Development Dependencies
Middleware
Logging Middleware Example / Writing Our Own Middleware
POST Requests in Express
MVC In Express
Express Routers
RESTful APIs
CRUD
Sending Files
Serving Websites With Node
Templating Engines
7. NodeJS NASA Project
Architecture diagrams on LucidChart
GET, POST, DELETE routes.
Serving React.js Applications in Express
CORS middleware
Models vs Controllers vs Routers
Loading Data On Startup
Automating Full Stack Applications With NPM
Serving React Front End (in Production)
Logging Requests with Morgan
Serving Applications With Client Side Routing
Building A Data Access Layer
Integrating with Frontend, Top Down Approach, Bottom Up Approach
Updating Our Architecture
8. Testing APIs
Unit tests vs API tests vs UI tests
Testing Node APIs with Jest and Supertest
9. Improving Node Performance
Example app which blocks event loop + real life blocking functions
Node Cluster Module theory + in action
Clustering in the real world
Load balancing
PM2 theory + in action
Managing Live Clusters with PM2
Zero Downtime Restarts
Improving Performance of NASA Project
Stateless APIs
Node Worker Threads
10. Databases
Using MongoDB to add persistence to NASA Project
Big focus on NoSQL vs SQL, PostgreSQL vs MongoDB, when to use both including Trends, Object-Relational Mismatch, ACID, References, Schemas. Schema-less vs Schemas
MongoDB Atlas
Horizontally Scaling Databases
Mongoose
Mongoose Models vs MVC Models
ObjectIDs in MongoDB
Pagination
Choosing A Database For Our NASA API
11. Working With REST APIs
Demonstrate integrating with a REST API by working with SpaceX API
Versioning REST APIs
Running Search Queries
SpaceX Launch Data
Mapping API Data to Our Database
Using Paginated APIs
Adding Pagination To Our API
12. Authentication
Focus on Security first principles with JWT, cookies, CSRF
Servers with HTTPS and SSL / TLS
Helmet.js
Working With Auth0
13. Deployment and CI/CD
Focus on building out a simple CI pipeline for NASA Project on GitHub
What is CI vs CD?
Automated tests
Dynamic configuration with secrets
14. Node Production and the Cloud (AWS)
Deploy to production with Docker to Amazon EC2
Virtual Machines
Serverless vs Containers
Docker files
Managing Docker Containers and Images
Working With SSH
Production Deployment with PM2 and Mongo Atlas
15. GraphQL
GraphQL vs REST
Building a GraphQL API
16. Sockets (WebSockets, Socket io)
Sockets overview
Sockets vs polling
WebSockets (vs Socket io)
Socket io Client and Server APIs
Broadcasting Events
Build out Full Stack Multiplayer Pong with Sockets
Implementing Pong Game Logic
Using Socket io With Express.js
Namespaces and Rooms
17~20. Bonus Sections on Deno, Advanced Asynchronous JavaScript, SQL, and TypeScript!
This course is not about making you just code along without understanding the principles so that when you are done with the course you don’t know what to do other than watch another tutorial. No! This course will push you and challenge you to go from an absolute beginner in NodeJS to someone that is in the top 10% of NodeJS backend developers.
We guarantee you this is the most comprehensive online course on Node.js! Have a look at the course outline video to see all the topics we are going to cover, all the projects we’re going to build, and all the techniques you’re going to learn to become a top Node developer!
See you inside!
------------
Taught By:
Andrei Neagoie is the instructor of the highest rated Development courses on Udemy as well as one of the fastest growing. His graduates have moved on to work for some of the biggest tech companies around the world like Apple, Google, Amazon, JP Morgan, IBM, UNIQLO etc... He has been working as a senior software developer in Silicon Valley and Toronto for many years, and is now taking all that he has learned, to teach programming skills and to help you discover the amazing career opportunities that being a developer allows in life.
Having been a self taught programmer, he understands that there is an overwhelming number of online courses, tutorials and books that are overly verbose and inadequate at teaching proper skills. Most people feel paralyzed and don't know where to start when learning a complex subject matter, or even worse, most people don't have $20,000 to spend on a coding bootcamp. Programming skills should be affordable and open to all. An education material should teach real life skills that are current and they should not waste a student's valuable time. Having learned important lessons from working for Fortune 500 companies, tech startups, to even founding his own business, he is now dedicating 100% of his time to teaching others valuable software development skills in order to take control of their life and work in an exciting industry with infinite possibilities.
Andrei promises you that there are no other courses out there as comprehensive and as well explained. He believes that in order to learn anything of value, you need to start with the foundation and develop the roots of the tree. Only from there will you be able to learn concepts and specific skills(leaves) that connect to the foundation. Learning becomes exponential when structured in this way.
Taking his experience in educational psychology and coding, Andrei's courses will take you on an understanding of complex subjects that you never thought would be possible.
--------
Adam is one of the instructors at Zero To Mastery, one of the highest rated and fastest growing software development academies on Udemy. He has been working as a senior software developer for many years and has worked for some of the top companies in the world with revenues exceeding $50 billion. Now, Adam aims to instil his students with his love for learning and development, while helping them achieve real world success that extends far beyond the completion of his courses.
Adam walks the walk when it comes to building applications that are secure, scalable, and performant and he is going to share his expertise with you to show you how real world systems are built. He understands what it’s like to go from “hello world” to large scale production deployments and promises to take you on that very same journey. Courses should teach practical skills that are current and should lay a foundation for a future in this incredible and exciting industry. And, having started as a self-taught developer, Adam knows the overwhelming feeling of not knowing where to begin, and the importance of learning from the best available sources.
Drawing from his deep experience, Adam’s courses will show you that you don’t need to spend tens of thousands of dollars to take your flourishing skills into the real world and make a difference.
See you inside the course!
Similar courses
-
English language
-
Recommended provider
-
Certificate available