Sei sulla pagina 1di 24

Master

Course Packet
MEAN | RUBY ON RAILS | PYTHON | IOS | JAVA

Last Updated: 2017 May 16


TABLE OF CONTENTS 2

ONSITE:
Program Overview 3
Schedule 4
Admissions Process 5

ONLINE
Program Overview 6
Schedule 7
Admissions Process 8

DEV ACCELERATOR
Python: Program Overview 9
Python: Schedule 10
MEAN: Program Overview 11
MEAN: Schedule 12
Ruby/Rails: Program Overview 13
Ruby/Rails: Schedule 14
Program Overview 15
iOS: Schedule 16
Admissions Process 17

CURRICULUM OVERVIEW
Web Fundamentals 18
Python 19
MEAN 20
Ruby/Rails 21
iOS 22

What is a Full Stack? 23


Why Become a Full Stack Developer 24
ONSITE: PROGRAM OVERVIEW 3

ONSITE BOOTCAMP
CURRICULUM* STRUCTURE
Web Development 3 Full Stacks
Python 14 weeks
MEAN 50-80 hours/week
Ruby on Rails
iOS
.NET Core
Java

The Onsite Bootcamp is the most hands-on and intensive program that we offer. As a student,
you will learn up to 3 stacks from our full curriculum Python, MEAN, and Ruby on Rails. Youll
enter the world of back-end development by starting with the Python stack. Then, youll move
on to the MEAN stack and Ruby on Rails, where youll learn to build apps from scratch.

Students will have access to instructor support from Monday to Friday, and our facility includes
dual monitor work stations for every student, a complimentary coffee and snack bar, a fully-
equipped kitchen for meals, an immersive learning environment filled with like-minded
individuals, and more. You will have access to Coding Dojos online learning platform, which
includes volumes of video tutorials for independent studying.

Furthermore, students and alumni will have access to our Career Services program, where
youll work closely with our team to pursue short and long-term career goals. Youll be able
to schedule one-on-one sessions with our Career Advisor team, attend exclusive job-hunting
workshops, and more.

PREREQUISITES
Personal laptop to work on during the program
Pass the admissions interview
Spent 100 hours of learning how to code on his/her own**

*The availability of stacks will vary by campus.


**Students with less than 100 hours of experience are required to complete the pre-boot camp coursework.
ONSITE: SCHEDULE* 4

Week 1-2
WEB FUNDAMENTALS
Start the program by learning the fundamentals
of front-end development.
WEB FUNDAMENTALS

Week 3-6
FULL STACK 1
Enter the world of back-end development
and learn your first full stack technology.
PYTHON

Week 7-10
FULL STACK 2 or or
Week 11-14
FULL STACK 3 MEAN RUBY/RAILS IOS
Pick between MEAN, Ruby on Rails, iOS, or
.NET Core as your second and third stacks*.
or or
Our instructors will help you choose the
stack best fit for you.
.NET CORE JAVA

Week 15-18
RESIDENCY PROGRAM

After completing the program, students may apply for the Residency Program, where alumni
will be able to spend up to an extra 4 weeks on campus. During this time, participants of the
program will have full access to the course material, our career support services, and
mentorship from our instructors.

This is an optional program that is ideal for those who wish to strengthen their skills and
utilize extra time to build their portfolios, as well as for entrepreneurs who need more time
to build their product or develop their unique web application.

*The availability of stacks will vary by campus.


ONSITE: ADMISSIONS PROCESS 5

1. APPLICATION Prospective students must first submit an admissions application. This


is a brief application form where youll share your background and
provide contact information. Dont worry, we arent specifically looking
for coding experience. This is simply a chance for us to learn more
about you.

2. ADMISSIONS The next step is to complete our optional Admissions Orientation. This
ORIENTATION is a brief 6-min walk through about who we are, who this program is
for, and what to expect as a Coding Dojo student.

3. INTERVIEW In this step, well take this time to see if youre a good fit for the
program. We firmly believe that we can teach anyone how to code,
however we also need to ensure our students are prepared for the
challenges of the boot camp. This interview and your application
will be factored into our admissions decision, which will be made 3-5
business days after your interview.

4. ACCEPTANCE If selected to attend, you will receive an acceptance letter through


LETTER email and a link to submit your safety deposit, which will reserve your
seat in the Coding Dojo program. You will also receive instructions
concerning the required preparations for your upcoming program.

5. SAFETY Due to limited seats and high demand, you must first submit your
DEPOSIT safety deposit to reserve your seat and access the pre-course
materials.
ONLINE: PROGRAM OVERVIEW 6

ONLINE
CURRICULUM* STRUCTURE
Web Fundamentals 2 Full Stacks
Python 20 weeks
MEAN, .NET, or Java 20-30 hours/week

The Online Bootcamp is an ideal alternative for students who are looking to kick-start a career in
web development but are unable to attend our on-campus programs. Within the first 12 weeks,
youll start with the fundamentals of front-end development, and afterwards transition to mastering
the Python software stack. Next, youll have an additional eight weeks of access to our online
learning platform to learn the stack of your choice: iOS, MEAN or Java.

As a student, youll receive direct support from our instruction team and utilize our industry-leading
online platform to complete hands-on projects and master the curriculum. Instructional support will
be delivered through live online lectures, set office-hours for feedback and questions, real-time TA
support by Slack, video chat and more.

Furthermore, students and alumni will have access to our Career Services program, where youll
work closely with our team to pursue short and long-term career goals. Youll be able to schedule
one-on-one sessions with our Career Advisor team, access our online collection of job-hunting
workshops, and more.

PREREQUISITES
Personal laptop or desktop computer to work on during the program
Willing to dedicate at least 20 hours per week to the program
Successful completion of Coding Dojos Algorithm Challenges algorithm.codingdojo.com
ONLINE: SCHEDULE 7

Week 1-4
WEB FUNDAMENTALS

Start the program by learning the fundamentals of


front-end development.

Week 5-12
FULL STACK 1

Pick up Python as your first stack and enter the


world of back-end development.

PYTHON

Week 13-20
FULL STACK 2

OR OR

MEAN .NET CORE JAVA

Pick between MEAN, .NET Core or Java as your second stack.


Our instructors will help you choose the stack best fit for you.
ONLINE: ADMISSIONS PROCESS 8

1. APPLICATION Prospective students must first submit an admissions application. This


is a brief application form where youll share your background, answer
several questions about your goals for the program, submit your resume,
and provide contact information. Based off your written answers, our
admissions team will decide if youre a good fit for the program, and dont
worry, we arent specifically looking for coding experience. Culture fit is
an important piece of our admissions process. An admissions decision will
be made within 3-5 business days.

2. ACCEPTANCE If selected to attend, you will receive an acceptance letter through email
LETTER and a link to submit your payment, which will reserve your seat in the
Coding Dojo program. You will also receive instructions concerning the
required preparation for your upcoming program.

3. SAFETY Due to limited seats and high demand, you must first submit your safety
DEPOSIT deposit to reserve your seat and access the pre-course materials.

Optional Advisory Session


If youd like to speak to an admissions member before reserving your
seat, you may attend an optional Advisory Session where well answer
any questions that you have about the program.
DEV ACCELERATOR PYTHON: PROGRAM OVERVIEW 9

PYTHON
CURRICULUM
4 weeks
40-60 hours/week

Master the Python software stack in four weeksa full stack focusing on the foundational structure
of networked programming. As the software choice of Instagram, Reddit, and other notable sites,
Python is an extremely desirable skillset within todays web development industry. This course
covers intermediate to advanced topics in Python, MySQL, OOP, Flask, and much more.

Companies using Python:

PREREQUISITES*

Personal laptop to work on during the program


Fluent in another MVC/OOP stack
At least 1 year of industry work experience (preferred)
Basic Algorithm Knowledge
Comfortable with HTML
Familiarity with installation of applications on Mac/Windows/Linux

*Please note that this course is intended for experienced software developers.
DEV ACCELERATOR PYTHON: SCHEDULE* 10

TECHNOLOGIES TOPICS COVERED

Week 1 Python Object-Oriented


MySQL Programming
SQL Series
ERD Diagrams

Week 2 Flask Web Security Basics


MVC Framework
Design Patterns

Week 3 AJAX CRUD Operations


API Application Deployment
jQuery

Week 4 PROJECT WEEK Optional Topics


Assigned or PostgreSQL
Individual Project Django
Object Relational Mapper
Scaling Web Apps
Web Crawler

* Weekly content subject to change depending on students pace.


DEV ACCELERATOR MEAN: PROGRAM OVERVIEW 11

MEAN
CURRICULUM
4 weeks
40-60 hours/week

Master the MEAN stack in four weeksa full stack Javascript platform for todays most in-demand
web applications. The MEAN stack combines the most powerful technologies for Javascript
development, providing the foundation for complex web application design. This course covers
the four elements of the MEAN stack, including MongoDB, Express, AngularJS and Node.js, and
prepares students for building real-time apps, creating custom JS libraries, and mastering the MVC
Frameworksfront and back-end.

Companies using MEAN:

PREREQUISITES*

Personal laptop to work on during the program


Fluent in another MVC/OOP stack
At least 1 year of industry work experience (preferred)
Basic Algorithm Knowledge
Comfortable with HTML
Familiarity with installation of applications on Mac/Windows/Linux

*Please note that this course is intended for experienced software developers.
DEV ACCELERATOR MEAN: SCHEDULE* 12

TECHNOLOGIES TOPICS COVERED

Week 1 JavaScript Advanced Object-Oriented


Node.js Programming
Node Package Manager Creating Custom JS Libraries

Week 2 Express MVC Framework


Socket.io NoSQL Database Design
MongoDB Building Real-time Apps
RESTful Routine

Week 3 Angular JS Full MEAN Applications


Ajax Requests

Week 4 PROJECT WEEK Optional Topics


Assigned or Bower
Individual Project Agile Development

* Weekly content subject to change depending on students pace.


DEV ACCELERATOR RUBY/RAILS: PROGRAM OVERVIEW 13

RUBY/RAILS
CURRICULUM
4 weeks
40-60 hours/week

Master the Ruby on Rails stack in four weeksa full stack framework for both front and back-end
design. As the software stack choice of Twitter, Basecamp, and other notable sites, Ruby on Rails
is an extremely desirable skillset within todays web development industry. This course covers the
essentials of the Rails framework, Object Oriented Programming in Ruby, Test Driven Development,
and much more.

Companies using Ruby/Rails:

PREREQUISITES*

Personal laptop to work on during the program


Fluent in another MVC/OOP stack
At least 1 year of industry work experience (preferred)
Basic Algorithm Knowledge
Comfortable with HTML
Familiarity with installation of applications on Mac/Windows/Linux

*Please note that this course is intended for experienced software developers.
DEV ACCELERATOR RUBY/RAILS: SCHEDULE* 14

TECHNOLOGIES TOPICS COVERED

Week 1 Ruby Object Oriented Programming


RSpec Object Relational Mapper
Active Record Test Driven Development

Week 2 Rails RESTful Routes


Capybara MVC Framework
PostgreSQL Design Patterns

Week 3 AJAX Authentication/Authorization


API Rails Deployment

Week 4 PROJECT WEEK Optional Topics


Assigned or Angular on Rails
Individual Project Ember
CoffeeScript
SASS & HAML
Ember + Sockets

* Weekly content subject to change depending on students pace.


DEV ACCELERATOR IOS: PROGRAM OVERVIEW 15

iOS SWIFT
CURRICULUM
4 weeks
40-60 hours/week

Learn Swift, Apples new programming language, and accelerate your transition into the growing
industry of iOS development. In this four-week course, you will learn a multitude of technologies
and skills within the curriculum, such as Swift, Xcode, Core Motion, Sockets, AV Foundation,
Advanced iOS Topics, and more.

Companies using iOS:

PREREQUISITES*

Personal laptop to work on during the program


Fluent in another MVC/OOP stack
At least 1 year of industry work experience (preferred)
Basic Algorithm Knowledge
Comfortable with HTML
Familiarity with installation of applications on Mac/Windows/Linux

*Please note that this course is intended for experienced software developers.
DEV ACCELERATOR IOS: SCHEDULE* 16

TECHNOLOGIES TOPICS COVERED

Week 1 Swift Strongly Typed Languages


Xcode Object Oriented
iOS Fundamentals Programming
Basic UI Views
Storyboarding in iOS

Week 2 Core Motion Table Views


Core Data Collections Views
iOS Intermediate Data Persistence with Swift

Week 3 iOS Advanced iOS and Sockets


AV Foundation iOS with a Server
Core Location Code Modularization in iOS
iOS Sockets

Week 4 PROJECT WEEK


Assigned or
Individual Project

* Weekly content subject to change depending on students pace.


DEV ACCELERATOR: ADMISSIONS PROCESS 17

1. APPLICATION Prospective students must first submit an admissions application. This is


a brief application form where youll share your background, submit your
resume, and provide contact information. Based off your application, our
admissions team will verify that youre qualified for the program, which
is designed specifically for experienced developers. An admissions
decision will be made within 3-5 business days.

2. TECHNICAL The second step is your technical interview. Well ask you questions
INTERVIEW about your background and understanding of core programming
concepts.

3. ACCEPTANCE If selected to attend, you will receive an acceptance letter through email
LETTER and a link to submit your safety deposit, which will reserve your seat in
the Coding Dojo program. You will also receive instructions concerning
the required preparation for your upcoming program.

4. SAFETY Due to limited seats and high demand, you must first submit your safety
DEPOSIT deposit to reserve your seat and access the pre-course materials.
CURRICULUM OVERVIEW: WEB FUNDAMENTALS 18

HTML/HTML5 GIT/GITHUB
Intro to HTML Intro to Git & Version Control
WEB FUND. Basic Nesting Practices Using Terminal Commands
The Header & Body How to Create & Utilize a Repository
Common Body Tags (lists, tables, etc.) Making, Tracking, & Reverting Changes
Building Forms & Declaring Input Values
Git Workflow Overview & States
Containers, Elements, Attributes, & Classes
HTML Best Practices
Advanced Git Commands & Concepts
Intro to HTML5 Branching, Merging, & Conflicts

Intro to Github
How to Use a Github Repository
CSS Forking, Cloning, & Pulling
Intro to CSS Github Collaboration & Workflow
CSS Selectors & Declarations
Inspecting Element
Inline, Block, Float, and Positioning
Div Layout & Formatting RWD
Styling Text & How Fonts Work Intro to Responsive Web Design (RWD)
Using Properties & Backgrounds Breakpoints, Units, & Media Queries
Replicating Complete User Interfaces Basics to Typesetting & Scaling
Optimizing & Cleaning Your Code Cross-device RWD
Grid System, Fluid Grids, & Adaptive Layouts
Intro to CSS3 & More Styling Properties
How to Build Your Own Shapes* Intro to CSS Frameworks
Constructing Complex Tables* Responsive Typography
Intro to Bootstrap* Using CSS Reset & Boilerpoint
CSS Preprocessors, LESS, & SASS*
Optional Frameworks, UI Assets, & Tools*

WIREFRAMES*
Intro to Wireframes
JQUERY Importance of Wireframes
Intro to jQuery Intro to Balsamiq & How to Use It
jQuery Functions & Debugging
How to Use Parameters & Getters/Setters
Essentials of the jQuery Library
Troubleshooting jQuery

Intro Advanced jQuery


Implementing Dynamic Content
Callbacks in jQuery
Transversing DOM Elements
Using Forms in jQuery
Using jQuery UI Library*
Extra jQuery Libraries*

*Optional topics available


CURRICULUM OVERVIEW: PYTHON 19

MYSQL FLASK
Intro to MySQL Intro to Flask
Database Design & Relationships Routing in Flask Applications
PYTHON Entity Relationship Diagrams (ERD) Building & Using Forms
Database Normalization Rendering Templates & Views
Intro to MySQL Workbench & Querying Delivering Static Content
Conventions & Common Data Types The Different HTTP Methods
How to Use ERDs Implementing Cookies & Sessions
Using a Database with Your UI Hidden Inputs
Recreating ERDs* Form Validation

Intro to Flask with MySQL


Import, Export, & Connect Your Database
PYTHON Connecting & Running Python Across Files
Intro to Python Database Communication with Python
Creating Variables in Python Data Validation with Python
Common Data Types & Best Practices Encryption & Data Security Basics
Using Strings & Built-in String Functions Using BCrypt for Encryption
List Creation & Manipulation
Using Tuples & Built-in Tuple Functions
How to Use Dictionaries in Python
Conditionals, Operators, & Nested Loops PYLOT MVC
Constructing Functions in Python Intro to Pylot Model View Controller (MVC)
What is an MVC?
How Controllers Work
Rendering Views
PYTHON OOP Session Classes & Using Session Data
Python Object Oriented Programming (OOP) Routing in Pylot
Creating Objects & Classes How to Use Models with Controllers
Adding Properties/Attributes to Classes Data Validation with Pylot
Constructing & Adding Methods to Classes Using Bcrypt with Pylot MVC
Chaining Methods & Using Magic Methods How to Use Multiple Controllers & Models
How to Use Modules & Packages in Python
Creating Multiple Objects
Updating Methods with Super
DEPLOYMENT
Intro to Python Advanced Topics Intro to Python Application Deployment
How to Use Multiple Arguments Tools Youll Use:
Ternary Operators in Python Amazon Web Services (EC2)
Using Lambda Linux (Ubuntu)
Overriding Inheritance & Polymorphism Gunicorn & Nginx
Using Composition Over Inheritance PostgreSQL
Virtualenv
Python Test Driven Deployment (TDD) Git
Unit Testing in Python & Outcomes Custom Domains
How to Use Assertions
Using TDD Methods: setUp & tearDown
*Optional topics available
CURRICULUM OVERVIEW: MEAN 20

JAVASCRIPT MONGO DB
Intro to JS Fundamentals (ES5 & ES6) Intro MongoDB
Declaring & Referencing Variables CRUD Operations for MongoDB
MEAN Variable Hoisting in JavaScript
Conditionals, Operators, & Nested Loops Intro to Mongoose
Using Arrays & Loops in JavaScript Dependencies in Mongoose
Objects, Functions, & Function Scoping Mongoose Communication with MongoDB
Variable Hoisting with Scoping Mongoose Methods
Return Statements in JavaScript Data Validation with Mongoose
Function Hoisting Create Associations Between Mongo Objects
RESTful Routing with Mongoose & Express
JS Object Oriented Programming (OOP)
How to Use Object Constructors
Common Constructors: This & New
Private Methods & Variables ANGULAR.JS
Creating Prototype Objects in JavaScript Intro to Angular.JS
Best Practices for JavaScript OOP Dependencies for Angular
Directives, Data Binding, & Compiling
Intro to JavaScript Advanced Topics Using Modules in Angular
How to Use Callbacks Controllers, $scope, & this
Delegating Functionality & Event Handling How to Create Factories
Using Data Filters in Angular
Ajax Requests Using Angular

NODE.JS
Intro to Node.JS
How to Use Package Managers (NPM/Bower) MEAN
File System Module & HTTP Building MEAN Applications
Making a Full Web Sever Connecting Angular to Node
How to Work with Node Modules Making API Requests in MEAN
Common & Useful Node Modules Tracing Data in the MEAN Stack

Modularization
Using Require & Module.exports
How to Modularize Existing Projects DEPLOYMENT
Intro to MEAN Application Deployment
Tools Youll Use:
Heroku
EXPRESS.JS Amazon Web Services (EC2)
Intro to Express.JS Linux Servers
Render Templates With Express View Engines
HTTP Methods: Forms, Data Tranfers, & Routing

Intro to Socket.io
Applications with Real-time Communication

*Optional topics available


CURRICULUM OVERVIEW: RUBY/RAILS 21

RUBY TDD
Intro to Ruby Fundamentals Intro to RSpec & Capybara
The Elegance of Ruby Using Expectations in RSpec
RUBY/RAILS Using Puts, Strings, & Basic Ruby Syntax Using Describe & It
Conditional Statements in Ruby Testing Your Models with RSpec
For Loops & Arrays in Ruby RSpec with Capybara Part 1/Part 2
How to Use Iterators & Blocks How to Test Routes in RSpec
Intro to Modules in Ruby & Enumerable Testing with RSpec in Various Scenarios

Intro to Ruby OOP


Creating Classes, Methods, & Properties
Using Private Methods RAILS PART 2
Working with Inheritance in Ruby Intro to TDD in Rails
User Permissions in Rails
Ruby Test Driven Deployment (TDD) Intro to Postgres & Database Setup
Intro to RSpec Methods Basic Encryption in Rails
How to Write Tests in TDD User Authentication in Rails
Implementing Test Driven Deployment User Authorization in Rails
How to Build App Features with Rails & TDD

RAILS PART 1
Intro to Rails Model View Controllers (MVC) RAILS PART 3
How to Get Started with an MVC Intro to Ajax, Gems, OAuth, & APIs in Rails
Intro to Gems How to Use The Asset Pipeline
Using Models in Rails Using Ajax with the Rails Framework
How to Use ORM in Rails API Integration in Rails
Validations, Relationships, & Migrations OAuth, Graph API, & REST API
Uploading Files with Paperclip
Intro to Controllers & Views Integrate Rails with Node.js & Express.js
Using Restful Routes & Routing in Rails
How to Use Controllers
Passing Information with Variables
Rendering Data with Controllers DEPLOYMENT
How to Use Views Intro to Rails Application Deployment
Intro to Form Helpers Tools Youll Use:
Using Scaffolding in Your Projects Heroku
Basic Web Security in Rails Part 1 Amazon EC2
Patch & Delete Methods in Restful Routes
Basic Web Security in Rails Part 2
TDD vs. Error Driven Development (EDD)
Layouts with Controllers & Views ANGULAR ON RAILS
Intro to Ruby on Rails with Angular
Using Angular Route Libraries
How to Create Models with Rails & Angular

*Optional topics available


CURRICULUM OVERVIEW: IOS 22

SWIFT BASICS IOS INTERMEDIATE


Intro to Swift Fundamentals Intro to iOS Intermediate Topics
Data Types: Constants & Variables Using CoreData
IOS Conditional Statements, Operators, & Loops Storing User Defaults in iOS
Basic Types & Typecasting Using Protocols & Delegates
Array Manipulation How to Use Table Views
How to Use Dictionaries in Swift Collection Views
Swift Optionals Segueing Between Views
Swift Object Oriented Programming (OOP) Using Navigation
Creating Classes & Structs Tab Bar Controllers
Inheritance in Swift
Value vs Reference Types
Using Functions in Swift
IOS ADVANCED
Intro to iOS Advanced Topics
Linking iOS to a Back-end Server
IOS BASICS Making HTTP Requests in iOS
Intro to iOS Fundamentals JSON Data in Swift
Storyboarding in iOS Grand Central Dispatch in iOS
Working with Autolayout Using Type Coercion
Linking your Storyboard to Code
Intro to Xcode
How to Use a Debugger
View Lifecycle Basics

*Optional topics available


WHAT IS A FULL STACK? 23

A full stack, also known as a software stack or bundle, is a set of


software components needed to create a complete web application.
A web application can be divided into two areas: front-end and back-
end. The front-end contains client-side languages and frameworks. The
back-end consists of web servers, back-end languages/frameworks,
and databases.

FRONT-END CLIENT-SIDE LANGUAGES/FRAMEWORKS


HTML
CSS
JavaScript
ReactJS
Angular
jQuery

BACK-END WEB SERVERS


Nginx
Apache
IIS
Node.JS

BACK-END LANGUAGES/FRAMEWORKS
Python/Django
C# / ASP.NET
JS/Node.JS
Ruby/Rails
PHP/CodeIgniter

DATABASES
PostgreSQL
MySQL
MongoDB
Redis
WHY BECOME A FULL STACK DEVELOPER 24

FULL STACK DEVELOPER

Front-End Developer

Web Server Admin/DevOps

Back-End Engineer

Database Engineer

Full Stack Developers are well-rounded software engineers who have the know-how
to independently build fully functional platforms, from the front-end to the back-end.
Conventionally, web development requires several variations of engineers: front-end
developers, web server administrators, back-end engineers, and database engineers.
However a full stack developer is all of the above, and whether in a large or small
engineering team, s/he can add value and insight to all layers of the project.

Potrebbero piacerti anche