August 14nd – Oct 20th, 2017
- Advanced HTML5, CSS, and Sass
- Structural Design Patterns
- Async Design Patterns
- Client / Server architecture
- TCP and HTTP
- NoSQL Databases
- RESTful API
- Authentication / Authorization
- Data Structures / Algorithms
- Data Modeling
- Test-Driven Development
- Behavior-Driven Development
- Unit, Integration, and End-to-End Testing
- Object-Oriented Programming
- Functional Programming
- Code Readability and Maintainability
- Version Control
- Continuous Integration
Environments and Tools
- Travis CI
- Code 301
Students with previous experience can test out of this requirement in their application. If you’d like to test straight into this course, please make sure you have experience with all of the topics listed on the Code 201 and Code 301 course pages.
- All students are expected to complete e prework for this course before the first day of class.
Build full-stack web applications with server-side Node.js and modern, client-side, front-end libraries and frameworks, including AngularJS.
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.
Once you are accepted into the course, please complete the Code 301 Prework.
Career Development Curriculum
- Two full days of Code 401 are dedicated to workshops and presentations that teach students the skills they’ll need for their job search, such as personal branding techniques, effective networking practices, how to create an attractive resume, mastering personal and technical interviews, job search best practices, and more.
Additionally, during each Project Week, students present projects that will go into their professional portfolio. Learn More »
Computer & Material Requirements
Students are required to bring their own laptop with plenty of free space on the hard drive. Most students use Macs, simply because they are easy to work with. Others install Linux on their laptops. We don’t encourage students to use any version of Windows unless they are already a Windows development guru. By the first day of class, students will need:
- Mac OS X: Xcode (v5) from the Mac App Store with the command line tools
- Linux: Windows machines set up to dual-boot a Linux operating system. We recommend Ubuntu.
- The latest version of Google Chrome
- The latest version of Node.js
- A text editor, such as Atom, Visual Studio Code or Vim
- A GitHub account
If you would like to set up your Windowns machine to dual boot to Linux, check out these guides:
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 »
In order to pass the class, students must attain at least 90% of available points.
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.