- Course Level: Code 401
- Certificate: Advanced Software Development In JavaScript
- Code 102
- Code 201
- Code 301
Students with previous relevant or equivalent experience can test out of this requirement in their application.
Learn to write clean, well-tested, advanced JavaScript code using industry-standard software engineering patterns using NodeJS, Express, Postgres, and React.
Students will learn to build full-stack applications. The first four weeks focus on building back-end web applications with Node.js. During modules six through nine, students learn to build web apps with modern front-end libraries and frameworks. This course goes in depth into the core competencies of JavaScript, object-oriented programming, and functional programming. Students get hands-on practice in test-driven development with agile tools and best practices.
Upon satisfactory completion of this course, a student should be able to:
- Fundamentals of JavaScript
- Object-Oriented Programming
- Structural Design Patterns
- Async Design Patterns
- Client / Server architecture
- TCP and HTTP
- SQL Databases
- RESTful API
- Authentication / Authorization
- Data Modeling
- Test-Driven Development
- Behavior-Driven Development
- Unit, Integration, and End-to-End Testing
- Functional Programming
- Code Readability and Maintainability
- Version Control
- Continuous Integration and Deployment
- Debugging
- Real-time apps with Socket.io
- Event-Driven Applications
- Asynchronous Programming
- Programming UI Component Frameworks
- Unified Modeling Language
- Domain modeling of real-world concepts using object-oriented programming.
- Configure and perform CRUD on PostgreSQL Databases.
- API building using contemporary frameworks and design patterns.
- Writing, publishing, and maintaining software documentation.
- Building User Interfaces using the React Library.
- Implementing Server Side Message Queueing.
- Installing and configuring UI component libraries.
- Server Side and Client Side JavaScript.
- Installing and developing software with command line utilities.
- Test driven development with integration and unit tests.
- Configure and develop applications deployed to cloud infrastructure.
- Building backend infrastructure using AWS services; Lambda, API Gateway, Dynamo DB, EC2, Elastic Beanstalk, SQS, SNS.
Class # | Topic | Challenge |
---|---|---|
01 | Intro to NodeJS | Reverse Array |
02 | Modules and Testing | insertShiftArray |
03 | Express Web Servers | BinarySearch |
04 | REST API | Mock Interviews: Sum Rows, nth Fibonacci |
05 | Linked Lists, Big O, Resume Workshop | Linked List Implementation |
Class # | Topic | Challenge |
---|---|---|
06 | Basic Authentication | Linked List Insertion |
07 | Bearer Authentication | kth-from-end |
08 | Role Based Access Control | Zip |
09 | Guided Project | Mock Interviews: Reverse Linked List, IsPalindrome |
10 | Stacks, Queues, Personal Pitch Workshop | Stack, Queue Implementations |
Class # | Topic | Challenge |
---|---|---|
11 | Event Driven Programming | Queue with two stacks |
12 | Network Events | FIFO Animal Shelter |
13 | Message Queues | Balanced Brackets |
14 | Guided Project | Mock Interviews: Stack Max, Duck Duck Goose |
15 | Trees, Job Search Workshop | Tree Implementation |
Class # | Topic | Challenge |
---|---|---|
16 | AWS: EC2 and Elastic Beanstalk | Tree Max |
17 | AWS: S3 and Lambda | Tree Breadth First |
18 | AWS: APIs and Dynamo DB | Tree Fizz Buzz |
19 | AWS: Message Queues and Notifications | Mock Interviews: Sum Odd, Compare Filenames |
20 | Project Kickoffs | Team Setup, Ideation, Wireframes, Tooling |
Class # | Deliverables |
---|---|
21 | Wireframes, User Stories, Architecture Plan, DevOps, Documentation, Agreements |
22 | Phase 1 |
23 | MVP |
24 | Final Polish, Presentation Practice |
25 | Live Project Presentations |
Class # | Topic | Challenge |
---|---|---|
26 | React - Function Components | Insertion Sort |
27 | React - State Hook | Merge Sort |
28 | React - Effect Hook and Lifecycle | Quick Sort |
29 | React - Reducer Hook | Mock Interviews: Merge Sort, Quicksort |
30 | Hash Tables, Behavioral Interview Workshop | Hash Tables Implementation |
Class # | Topic | Challenge |
---|---|---|
31 | React - Context API | Repeated Word |
32 | React - Context API | B-Tree Intersection |
33 | React - Cookies, Local Storage Login and Auth components | Map Left Join |
34 | React - RBAC | Mock Interviews: Most Common Word, Unique Character Strings |
35 | Graphs, Technical Interview Workshop | Graph Implementation |
Class # | Topic | Challenge |
---|---|---|
36 | React - Redux Reducers, Actions, and State | Graph Breadth First |
37 | Redux - Combined Reducers | Graph Business Trip |
38 | Redux - Asynchronous Actions | Graph Depth First |
39 | Redux - Alternatives and Advanced Usage | Mock Interviews: Adj Matrix to Adj List, Graph Connected |
40 | Personal Presentation | Final Exam Prep |
Class # | Topic | Challenge |
---|---|---|
41 | React Native | Mock Interview: Browser History, Find Anagrams |
42 | React Native | Mock Interview: Reverse a string (3 ways), Sanitize URL |
43 | Open Source | Mock Interviews: Estimate Water Usage, Convert year to roman numerals |
44 | Ethics | Mock Interviews: Rotate a Matrix, Largest 3-Product |
45 | Project Kickoffs | Team Setup, Ideation, Wireframes, Tooling |
Class # | Deliverables |
---|---|
46 | Wireframes, User Stories, Architecture Plan, DevOps, Documentation, Agreements |
47 | Phase 1 |
48 | MVP |
49 | Final Polish, Presentation Practice |
50 | Live Project Presentations |