Software Development

We are proud to offer two career paths in software development. Front End Web Development and Full Stack Engineer.  Full Stack Engineer path requires that you complete the Front End program as well as one of the Back End programs. 

Front End Web Development

20 Week Program

Students will learn to build robust and dynamic websites. The first ten weeks focus on building an understanding for web design concepts. Students get hands on practice designing web pages with CSS3 and HTML5. This course goes in depth into the core competencies of MVC Architecture, AJAX and Asynchronous Programming, and functional programming. 

Module 1: Web Development Fundementals

Timeline: Weeks 1-10

 

  • HTML5 and CSS3

  • Object-Oriented Programming

  • Introductory Data Structures & Algorithms

  • Document Object Model (DOM) Manipulation & Traversal

  • Multiple Approaches to Page Layout

Module 3: Capstone Project

Timeline: Weeks 19-20

  • Capstone Project

Module 2: Web Development Foundations

Timeline: Weeks 11-18

 

  • MVC Architecture

  • Responsive Design

  • Web Request/ Response Cycle

  • SQL

  • Client-Side Templates

  • Server-Side Routing and Rendering

  • Services and RESTful APIs

  • Functional Programming

  • Persistence with Databases

  • AJAX and Asynchronous Programming

  • JSON and 3rd-party APIs

  • Express.JS

  • Deployment with cloud services like Heroku

  • Daily Practice in Data Structures

  • Strings

  • Arrays

  • Objects

  • Functional Programming

Coding
Unknown.png
Advanced Software Development in Full-Stack JavaScript

20 Week Program

Students will learn to build full-stack applications. The first four weeks focus on building back-end web applications with Node.js. During weeks 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.

Concepts:

  • Structural Design Patterns

  • Async Design Patterns

  • Client / Server architecture

  • TCP and HTTP

  • NoSQL Databases

  • RESTful API

  • Authentication / Authorization

  • 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 and Deployment

  • Debugging

  • Real-time apps with Socket.io

  • Event-Driven Applications

  • Asynchronous Programming

  • UI Component Frameworks Programming

  • UML

Unknown-3.png
Advanced Software Development in Python

Students will learn to write clean, well-tested, advanced Python code using industry-standard software engineering patterns. They will study the foundational structures of programming, from object-oriented principles to advanced topics such as Django, Docker, and Data Science.

Concepts:

  • Syntax

  • Classes

  • Control Structures

  • Lambdas

  • Decorators

  • Iterators

  • Generators

  • Using common patterns

  • Object-Oriented Programming

  • Functional Data Manipulation

  • Open Source Contribution

  • Data Analysis

  • Numpy

  • Pandas

  • Scikit-Learn

  • Machine Learning

  • Feature Selection

  • Model Evaluation

  • Data Validation

  • Linear Regression

  • Data Visualization

  • MatPlotLib

  • Plotly

Unknown-2.png
Advanced Software Development in Java with SpringMVC & Android

20 Week Program

Students will learn to write clean, crystal-clear, well-tested, advanced Java code using industry standard software engineering patterns while building servers with SpringMVC and mobile apps with Android.

Concepts:

  • Java Fundamentals

  • Native Primitive Data-types

  • Strings

  • Arrays

  • Java Collections library

  • Static Typing

  • Access Modifiers

  • Java Generics

  • Exception Handling

  • Unit Tests

  • Test-Driven Development

  • OOP Principles

  • Threading & Concurrency

  • Recursion

  • MVC

  • Identity and Authentication

  • Security and Performance

  • Web APIs

  • Design Patterns

  • Application Deployment

Unknown-4.png
Advanced Software Development in Mobile App Development

Students will learn how to create mobile games and apps for the Android and iOS operating systems. They will take their app ideas from concept to completion and learn the tools, frameworks, and best practices used by mobile developers around the world.

Concepts:

Cocoa Touch

  • UIKit

  • View Hierarchy

  • Responding to Touch Events

  • Animation / Custom Interactive Transitions

  • UITableView / UICollectionView

  • Container View Controllers

  • Foundation

  • Collection Classes Under the Hood

  • Strings and String Manipulation

  • Networking with NSURLSession

  • Core Data

  • Create and Design Model Objects in a Relational Database (SQLite) 

  • Optimize Your Code for Complex, Lightning-Quick Database Lookups

  • Migrating your Data

  • Concurrency and Core Data

  • Web APIs

  • HTTP Protocol

  • REST API

  • JSON

  • Callbacks

  • OAuth

Swift

  • Types

  • Primitives - Integer, Float, String, and Boolean

  • Collections - Arrays and Dictionaries

  • Classes and Structs

  • Enums

  • Functions

  • Global Functions

  • Methods

  • Nested Functions

  • Closures and Closure Expressions

  • Essential & Advanced Swift Features

  • Optionals

  • Initializers

  • Nested Types

  • Extensions

  • Generics

  • Advanced Operators and Overloading

  • Pattern Matching

Xcode

  • Design patterns

  • MVC

  • Target Action

  • Delegation

  • Notifications

  • Projects

  • File Structure

  • Navigation

  • Build Settings

  • Property Lists

  • Bundles

  • Interface Builder

  • Storyboards

  • Size Classes

  • Autolayout

  • Xibs

  • Outlets and Actions

  • Tags

  • Debugging

  • Breakpoints

  • Logging

  • LLDB

  • Profiling Apps with Instruments

  • Testing

  • Unit Testing with XCTest

  • Optimizing Method Calls with Performance Tests

Classroom:

100% Virtual Learning Enviroment

Class Schedule:

Part Time Classes

2 weekday nights - Instruction 2 weekday nights - lab

23 weeks total

Tuition:

$9,000 paid in full by first day of class

$10,500 with financing

$2,000 deposit