Code 301: Intermediate Software Development

Code 301: Intermediate Software Development



Becoming a well-rounded developer is much more than learning language syntax.

Study the common core of software development, including MVC, Object-Oriented Programming, functional programming, asynchronous programming, and much more in this intensive course. You will learn how to create and launch web apps in HTML, CSS, and JavaScript, with the help of professional-grade frameworks and libraries from around the web.

Daytime and Nights & Weekend tracks are each 160 hours total. Course hours include lecture, lab, and coworking.


At the end of this course, students will be able to:

  • Collaboratively design and create a single page web application from scratch using MVC architecture built with clean HTML, CSS, and JavaScript that satisfies stakeholder requirements captured in user stories.
  • Have the skills to enroll in a Code 401 course or attain an entry-level website development job or internship by completing the course requirements.


  • Code 201
    • Students with previous experience can test out of this requirement in their application. If you'd like to test straight into Code 301, please make sure you have experience with all of the topics listed on the Code 201 course page.


Once you are accepted into the course, please complete the Code 301 Prework.



  • MVC
  • Responsive Design
  • SQL
  • Client-Side Routing and Single-Page Application Development
  • Services and APIs
  • Functional Programming
  • Relational Data
  • AJAX/JSON and asynchronous programming
  • APIs and middleware
  • Heroku & Deployment


  • Advanced HTML Templating
  • Intermediate CSS
  • Intermediate JavaScript
  • jQuery Events & DOM Manipulation

Environments and Tools

  • Unix and the Command Prompt
  • Git and Github
  • Atom
  • Chrome Dev Tools

Computer 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. By the first day of class, students will need:

If you would like to set up your Windows 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 »

Homework Policy

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.

Contact Us to Apply