Code 401: Advanced Software Development with JavaScript
Class Overview
Build full-stack web applications with server-side Node.js and modern, client-side, front-end libraries and frameworks, including React. Throughout Code 401: Advanced Software Development with JavaScript, you will study data structures and algorithms, professional software development techniques, and established industry best practices as you advance your skills in full-stack JavaScript development.
This course includes a career coaching curriculum to get you ready for your job search, plus job search assistance after graduation. The course totals 400 hours, including lectures, lab, coworking, and collaborative projects.







Coming Up
- There are no upcoming events.
Already completed most of the program? Or are you already an intermediate software developer? Let’s talk about Code 401!
Topics
Concepts
- Structural design patterns
- Asynchronous design patterns
- Client and server architecture
- TCP and HTTPS
- NoSQL databases
- RESTful APIs
- Authentication and authorization
- Data modeling
- Object-oriented programming
- Functional programming
- Code readability and maintainability
- Version control
- Debugging
- Real-time apps with Socket.io
- Event-driven applications
- UI component frameworks
- Unified Modeling Language (UML)
Environments and Tools
- Unix and the command prompt
- Git and GitHub
- Node.js
- ESLint
- MongoDB
- Heroku
- ES6
- React
- Redux
- Webpack
- Sassy Cascading Style Sheets (SCSS)
- JSDoc
- Swagger
- Jest testing
- React Native
- Socket.io
- Cloud integration and deployments with AWS tools like S3 and Lambda
Data Structures and Algorithms
- Linked lists
- Stacks and queues
- Trees
- Binary search trees
- Sorting algorithms
- Hash maps
- Graphs
- Whiteboard interview practice
Agile Values and Practices
- Agile Manifesto
- Modern agile
- Test-driven development
- Behavior-driven development
- Unit, integration, and end-to-end testing
- Continuous integration
- Continuous delivery
- Kanban and Scrum
Collaboration
- Pair programming
- Group projects
- Whiteboard challenge groups
Learn with Stacked Modules
Concepts in each of our courses are taught using stacked modules, where a new concept is introduced in each class session, building upon what came before it. This is a challenging style that requires persistence, practice, and collaboration, but allows more concepts to be introduced over the length of the course. This method helps students learn and retain more information in a short period of time. Learn more about stacked modules.
Outcomes
By the end of this course, you will:
- Build and contribute to a server-side and client-side application, each using an architecture/framework that promotes maintainability, scalability, and collaboration. These skills will be fully demonstrated during project week during their team development of a prototype, adhering to industry best practices and patterns
- Apply Computer Science fundamentals in analyzing the trade-offs between competing solutions when choosing algorithms; JavaScript coding patterns and practices; and byte formats that do not degrade the performance or Node browser functionality of their applications
- Be given a series of career development workshops and the web development knowledge, experience, habits, and practices learned in this course, students will create an online brand, network, and resume; and will demonstrate aptitude in personal and technical interviews of varying formats, in order to conduct a successful job search and obtain a job as a fullstack JavaScript or frontend web developer
Career Development
We dedicate 2 full days of Code 401 to workshops and presentations that teach you the skills you’ll need for your job search. You’ll cover topics such as personal branding techniques, effective networking practices, how to create an attractive resume, mastering personal and technical interviews, and job search best practices!
Additionally, during each project week, you and your classmates will present collaborative projects that will build your professional portfolio.
Code for Community
We encourage Code 401 students to work on apps that prompt social change or support your communities. Projects that focus on bringing real value to the lives of others not only shine on a resume but will help you focus on solving real-world problems with just your computers and an internet connection.
Partners and Market-specific Training
To ensure that our training prepares students for successful careers, we partner with local companies—small and large—to stay up to date on market trends and technology.
As our partners share which frameworks and tools they’re are looking for, we incorporate the most in-demand skills into our curriculum. Our partners are involved in the education process by speaking to classes and actively hiring graduates.
Ongoing Support
Our support and guidance extends well beyond graduation day. After successfully completing the course, Code 401 graduates receive job search tips and leads, gain access to our alumni network, and can continue to get one-on-one feedback and guidance on their job search.
Prerequisites
- Computer updated with latest version of OS, all security patches installed. See “Material Requirements” below
- Familiarity with basic algebra concepts
- Code 301*
Prework
Once you are accepted into the course, please complete the Code 401 Prework. This important Prework makes up part of your 401 grades!
Material Requirements
You are required to supply your own laptop that meets the below requirements. Chromebooks are not suitable for this course, since you can’t directly control installed software. You are responsible for the upkeep and maintenance of your computer throughout the course. The course will include a class session dedicated to configuring your computer to be ready for professional-grade software development the first day of class.
- 64-bit Operating System, like macOS or Windows 10
- Fully up to date, with the latest version of the operating system and all security updates installed
- At least 50 gigabytes of free space on the hard drive
- At least 8 gigabytes of RAM; 16 gigabytes of RAM strongly preferred
- Free of viruses and in general working order
- A text editor: Visual Studio Code
- A GitHub account
- Linux: Windows machines should be set up to dual-boot a Linux operating system. We recommend Ubuntu
- Homebrew
- The latest version of Node.js
Plus, we offer tuition assistance and are GI Bill® approved!
Nights and Weekends
DeltaV understands that our software development program is a huge undertaking. That’s why we adapted the Code 301: Intermediate Software Development curriculum to a nights and weekends format! The program stretches our 4-week daytime program across 7 weeks of classes Mondays through Thursdays and Saturdays. The course still features live instruction, group projects and presentations, and career coaching, but at the pace that fits your busy life!
What are you waiting for? Let’s continue your coding journey with Code 301 Nights and Weekends!
- There are no upcoming events.
Homework Policy
DeltaV Code School provides only a pass/fail transcript and does not assign letter grades to each student. However, to monitor student progress throughout each program, DeltaV Code School uses a point-based grading system that is introduced to the students on the first day of each program. In order to pass the class, students must attain at least 90% of available points. For more information, see Grading System and Disciplinary Action For Low Grades.
Attendance
Punctuality, participation in discussions, completion of assignments, and demonstration of professional courtesy to others are required. Attendance will be taken at the beginning of every class. Passing requires at least 90% attendance. Students should always contact the instructors ahead of time if they are unable to attend all or part of a class session.
Code of Conduct
Punctuality, participation in discussions, completion of assignments, and demonstration of professional courtesy to others are required. Attendance will be taken at the beginning of every class. Students should always contact the instructors ahead of time if they are unable to attend all or part of published class or lab hours.
Still have questions? We’re here to help!