Full Stack Development
Launch a rewarding career as a Full Stack Engineer

Advanced Software Development in Full-Stack JavaScript
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

Advanced Software Development in Java with SpringMVC & Android
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

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

Advanced Software Development for Mobile Applications
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