Skip to main content

Back-End Web Development with Node.js COMP 3012

Computer Systems Part-time Studies Course

Course details

​This hands-on course follows on from COMP 2132 and was designed for students with prior experience developing web pages using HTML5, CSS3 and JavaScript. Students must provide their own current model PC, i5 or higher equivalent processor, 8 GB of RAM minimum, and 256 GB minimum storage. Highspeed internet access is needed for online sections and for homework. Starting with how Node.js fits into client-server software architecture, participants will focus on the Node.js programming model. Labs and exercises cover creating, installing and using node modules. Web frameworks like Express.js and Jest as used to build and test powerful web applications. Students will experience how Node.js is used by enterprise environments and modern web stacks like MEAN and MERN. Topics include: how to build, and deploy a RESTful API following best-practices, and learn error handling strategies. Typescript integration with Node.js as well as how to connect to databases will also be discussed. Please Note: Attendance, participation in class and the BCIT Learning Hub are required. Students may have an average total time commitment of 11 hours each week; with 3 hours of class time, and 8 hours of homework. Web developers should also consider multiple advanced JavaScript tools including: COMP 2909 -Angular and Vue.js Fundamentals or COMP 2913 -React and Modern JavaScript. COMP 3012 is an elective in several BCIT Computing applied associate certificates; Web Development (AWD), Web and Mobile Application Development (WMA), Advanced Java Development (AJD) and Advanced .NET Development; as well as the CST/PTS Diploma. It is also preparation for the follow-on COMP 3916 Docker for DevOps. Upon completion, successful students will be able to use Node.js to build robust, scalable, data intensive web applications with user authentication. This course replaces COMP 2912 as of September 2021.

Prerequisite(s)

Credits

3.0

Cost

$559.00 - $570.23 See individual course offerings below for actual costs.

Course offerings

Spring/Summer 2022

Below are two offerings of COMP 3012 for the Spring/Summer 2022 term.

CRN 68046

Duration

Sat May 07 - Sat Jul 23 (12 weeks)

  • 12 weeks
  • CRN 68046
  • $559.00
Class meeting times
Dates Days Times Locations
May 07 - Jul 23 Sat 09:30 - 12:30 Online
Instructor

Armaan Dhanji

Course outline

View

Cost

$559.00

Important information
  1. Internet delivery format.
  2. Departmental approval needed
  3. Important course information will be sent to you prior to your course start date. Check your myBCIT email account to access this information.
  4. Please email cstpts@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 36 hours synchronous online classes. The class meets once per week for 3 hours face to face (virtual classroom). Late registration is not permitted. Class is in session on May 21 (Victoria Day) and July 2 (Canada Day).
Status

In Progress

This course offering is in progress. Please check this page for other currently available offerings, subscribe to receive email updates or contact us with your comments or questions.

CRN 68092

Duration

Thu May 12 - Thu Jul 28 (12 weeks)

  • 12 weeks
  • CRN 68092
  • $559.00
Class meeting times
Dates Days Times Locations
May 12 - Jul 28 Thu 18:00 - 21:00 Online
Instructor

Armaan Dhanji

Course outline

View

Cost

$559.00

Important information
  1. Internet delivery format.
  2. Departmental approval needed
  3. Important course information will be sent to you prior to your course start date. Check your myBCIT email account to access this information.
  4. Please email cstpts@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 36 hours synchronous online classes. The class meets once per week for 3 hours face to face (virtual classroom). Late registration is not permitted.
Status

In Progress

This course offering is in progress. Please check this page for other currently available offerings, subscribe to receive email updates or contact us with your comments or questions.

Fall 2022

Below is one offering of COMP 3012 for the Fall 2022 term.

CRN 48301

Duration

Tue Sep 20 - Tue Dec 06 (12 weeks)

  • 12 weeks
  • CRN 48301
  • $570.23
Class meeting times
Dates Days Times Locations
Sep 20 - Dec 06 Tue 18:00 - 21:00 Downtown DTC Rm. 370
Instructor

Armaan Dhanji

Course outline

Course outline TBD — see Learning Outcomes in the interim.

Cost

$570.23

Important information
  1. Departmental approval needed
  2. Please email cstpts@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 36 hours on campus. Late registration is not permitted.
Status

Learning Outcomes

Upon successful completion of this course, the student will be able to:

  • Explain how Node.js fits into client-server software architecture.
  • Create, install and make use node modules to extend the capabilities of the Node.js platform.
  • Use a web framework like Express.js to build web applications.
  • Make use of testing frameworks like Jest to automate the testing of code.
  • Connect to, insert and retrieve data from a database.
  • Use modern Node.js techniques for efficiently working with files and network requests through asynchronous IO.
  • Prevent your Node.js applications from crashing by applying best-practice error handling strategies to ensure your server can gracefully recover in the event of an error
  • Gain an understanding of how Node.js fits into modern web stacks like MEAN or MERN.
  • Build a complete user authentication system that allows for registering and login of users.
  • Build, deploy, and consume a RESTful API.
  • Use static type checking through Typescript to build more robust, scalable Node.js applications.
  • Use static type checking through Typescript to build more robust, scalable Node.js applications.

Effective as of Spring/Summer 2021

Related Programs

Back-End Web Development with Node.js (COMP 3012) is offered as a part of the following programs:

School of Computing and Academic Studies

  1. Advanced .NET Development
    Associate Certificate Part-time
  2. Advanced Java Development
    Associate Certificate Part-time
  3. Applied Web Development
    Associate Certificate Part-time
  4. Computer Systems
    Diploma Part-time
  5. Web Development Fundamentals
    Statement of Completion Part-time
  6. Web and Mobile Application Development
    Associate Certificate Part-time

Contact Us

If you have a question or comment about this course, please complete and submit the form below.

  • Privacy Notice: The information you provide will be used to respond to your request for BCIT program information and is collected under Section 26(c) of the Freedom of Information and Protection of Privacy Act (FIPPA). For more information about BCIT’s privacy practices contact: Associate Director, Privacy, Information Access & Policy Management, British Columbia Institute of Technology, 3700 Willingdon Ave. Burnaby, BC V5G 3H2, email: privacy@bcit.ca.
  • This field is for validation purposes and should be left unchanged.

Subscribe

Interested in being notified about future offerings of Back-End Web Development with Node.js (COMP 3012)? If so, fill out the information below and we'll notify you by email when courses for each new term are displayed here.

  • Privacy Notice: The information you provide will be used to respond your request for BCIT course information and is collected under Section 26(c) of the Freedom of Information and Protection of Privacy Act (FIPPA). For more information about BCIT’s privacy practices contact: Associate Director, Privacy, Information Access & Policy Management, British Columbia Institute of Technology, 3700 Willingdon Ave. Burnaby, BC V5A 3H2, email: privacy@bcit.ca.