Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

Part-Time

Online
Programming from scratch

2 hours per week in Live Lessons

15 hours per week in Self-Study

36 techologies 7 projects 10 Month

Over 3,000 alumni, hired by tech companies worldwide

*As of March 2022 alumn data


Part-Time Online

After 10 months of training, you will


become a full-stack developer, ready
to work in an IT company or freelance,
earning about 100,000 per year.

APPLY NOW

10 months 20 hrs/wk
10 month online Fullstack
Learn the most in-demand programming language
and stacks in 2022

Your Progression Plan

HTML+CSS Javascript React Node.js


Start with HTML and Learn Javascript in Learn React.js
Learn back-end
CSS basics, theory a project-based and front-end and complete a final
and practical environment development capstone project
application through theory and
hands-on practice

A Typical Week in the Part- Time Program

3 hrs Work with


2 hrs Live 2 hrs Work with
2 hrs Live Self-consolidation of
a Compendium Practice Lesson a Compendium Practice Lesson the studied technology

and a homework 7:30 PM EST and a homework 7:30 PM EST on the lesson

Monday Tuesday Wednesday Thursday Friday

Self Study Mentorship


15 hour/week for compendium, auto-check tasks, Technical help and homework
lessons recordings, practical homeworks feedback Monday-Sunday
The program schedule allows you to combine work with study.

With the optimally distributed strain, you will be able to devote

enough time both to practice on the lessons and to do your homework.

Pro Tips from Student Success

1. Write down goals and objectives

2. Analyze

3. One task at a time

The main mistake 90% people When tasks are written down, it is The author claims that the only
make is trying to keep a list of daily easier for the brain to separate possible way to concentrate for
tasks in their heads. The more we them into “important” and 100% is when you do one task at a
think “how not to forget anything”, “useless”. For example: your goal is time. How to choose only one task
the less resource remains on “how to write a JavaScript application by when you have written down 4-5
to do it”. The way out is to plan on 12/31/2021. Complete the “Learn goals from different areas of life?
paper. For example, in a diary, JS Syntax” challenge and get one Use the rules from the book:

smartphone, MS Office or Google step closer to victory. At the same - distribute goals and tasks like
document. Psychologists at the time, complete the "walk the dog" folders or directories;

University of California studied the task and don't get an inch closer to - prioritize tasks.

process of achieving a goal and the target. The conclusion is to get


came to the conclusion that those rid of useless tasks or delegate
who record tasks on “external them, and focus on important
media” achieve goals 47% more tasks. To choose the right tasks
often than those who do not. The and plan the path to the goal, use
ability to keep a diary is not just a the GTD (Getting Things Done)
useful habit, but also an integral methodology. We wrote more
part of success. about it in the article “3 time
management techniques to keep
up with everything”.

Fullstack Educational Programm

HTML+CSS
Module 1 - HTML - Document Markup Language

- Tags and Attributes

HTML Basics
- HTML Document Frame

Tags and Attributes


- Document Meta Information

Semantics - Semantic Markup Concept

- Text Markup

- Images

- Validation of HTML Document

- Developer Tools

- Symbolic Substitutions

- Table and Media Markup

Module 2 - CSS Syntax

- Connecting Styles

CSS Basics Selectors - Selectors

Colour
- Text Color

Text Decoration and Fonts - State Pseudo-Classes

- CSS Variables

- Priority, Cascade, and Inheritance

- Absolute Units

- Text Design (Text Formatting)

- Connecting External Fonts Via Google Fonts

- Local Fonts: @font-face Directive and Font-Display Property

Module 3 - Document Flow

- Block Model of an Element

Block Model Flexbox - Margin Collapse and Dropout

- Box Types

- Visual Formatting Model

- Horizontal Alignment

- Structural Pseudo-Classes

- Styles Normalization

- Flexbox Technology

- Flex Containers and Items

- Flex Axis

- Multi-line Flex Containers and Flex-Wrap Property

- Flex Item Properties

- Calc () Function

Module 4 - Raster Graphics Types: JPG, PNG, WebP

- Content and Decorative Images

Background and
Decorative Elements - Background

- CSS Filters

- Gradients

- CSS Shadows and the Box-Shadow Property

- Vector Graphics

- Inline SVG and SVG Sprites


Module 5 - Position Property

- Relative Positioning

Positioning of Elements
- Absolute Positioning

Transformations
- Fixed Positioning

Transitions and - Sticky Positioning

Animations - Layering and the Z-Index Property

- The ::before and ::after Pseudo-Elements

- 2D Transformations

- Perspective and 3D Transformations

- Transitions and Animations

Module 6 - Semantic Markup of Form Elements

- Form Element Availability

Forms - Decorating the State of Form Elements

- Layout of Custom Form Elements

Module 7 - Viewport Meta Tag

- Media Rules and Media Devices

Media Rules
- Chrome DevTools for Mobile Layout

Responsive Layout
- Responsive Layout

Responsive Graphics - The Mobile-First CSS Approach

- Screen Pixel Density

- Responsive img Tag

- Art Direction with Picture Tag

Module 8 - Network Tab: Loading a Web Page

- Audit Tab: Troubleshooting

Optimization
- Development and production

Preprocessors - Resource Optimization: Vendor Prefixes, Code Minification,

and Image optimization

- SASS Preprocessor

Javascript

Module 1
1
- Syntax basics: A , statements and semicolons

- Console tab in Chrome Devtools

Variables and types


. - B asic primitive types: number, string, boolean, null and undefine d

B .
ranches .
cycles
- Variables: declaration with let and const, naming

.
- Data output: console log and alert

- Numbers and B asic Operators

- Comparison operators

- Math and Number classes

- Strings, template strings and methods

- Type casting (numeric, string, boolean)

- Logical operators: &&, ||, !A2

- Branches: if, if...else, else...if

- Ternary operator

- switch design

- for loop

- Directives break and continue

- Block scope

Module 2 - Arrays: array literal, elements, indexing, length

- Pass by reference and by value

Arrays.
- Iterating over an array with for and for...of loops

Functions. - Basic methods: split and join, indexOf and includes, push, slice and splice, concat

- Function expressions and function declaration

- Arguments and parameters, default parameter values

- Return value

- Code execution order and function call stack

- Function scope

- Arguments pseudo-array

- Debugging code in Chrome browser

- Pattern Early Return

Module 3 - Object literal

- Properties and methods of the object

Objects.
- this in object methods when accessing properties

Rest and spread - Iterating over objects: for...in and methods Object.keys|values|entries

operations - Working with an array of objects

- Spread and rest operations

- Destructuring objects

- Array destructuring

- Pattern "Parameter object

Module 4 - Callback functions

- Arrow functions

Iterating array - The forEach method as a replacement for for and for...of

methods - Declarative and imperative code

- Clean features

- Methods: map, filter, find, findIndex, every and some, reduce, sort

- Chains of methods

Module 5 - Function call context

- Rules for defining this

The this keyword.


- this in arrow functions

Prototypes and classes - Call, apply and bind methods

- Object prototype and Object.create() method

- Prototypical inheritance

- Classes: declaration, constructor, methods

- Getters and setters

- Private properties and methods

- Static properties and methods

- Inheritance with extends and super


- Window and document objects

Module 6
- Hierarchy of DOM elements

- Search DOM elements with querySelector

DOM and Events


- textContent property

- Working with classList and attributes

- Create elements

- Inserting elements: append, prepend, before and after

- Removal by the remove method

- The innerHTML property and the insertAdjacentHTML method

- Fundamentals of events. Creating and Deleting Listeners

- Event object

- Cancel default browser behavior

- Click, change, input, submit, focus, blur and keydown events

- Propagation of events

Module 7
- Event bubbling

- Delegation of events

Patterns and Event


- Chatty events

Optimization
- Throttle and debounce events with Lodash library

- Lazy-loading images: native and with lazysizes library,

vanilla-lazyload or lozad.js

- Using libraries via CDN

- JS Outside the Browser: Introduction to Node.js

Module 8
- npm package manager: work with packages (install, remove, update)

- Automation: npm scripts

Project infrastructure.

- Code modularity

Web storage.
- JS module bundlers: dependency graph, tree shaking, project build

- Introduction to Webpack

- Syntax of ECMAScript modules: named and default imports/exports,

namespace imports

- Transpiling code from Babel and Browserslist

- Code formatting and checking: editorconfig, prettier, eslint

- Dev and prod code

- JSON data format: scope in web development

- JSON: syntax, data types and validation

- JSON.parse() and JSON.stringify() methods

- The try...catch construct for JSON.parse()

- Storing information on the client: scope

- Properties and methods of localStorage

- Storing complex data: arrays, objects

- Asynchrony

Module 9
- Timers: setTimeout and setInterval

- Date and time

Asynchrony and Date.

- Promise API

Promises.
- Methods then, catch, finally

- Methods Promise.all, Promise.race

- Promise.resolve and Promise.reject methods

- Promisification of functions

- event loop
Module 10 - Interaction with public REST API

- Basics of working in Postman (or other client)

Interaction with the - HTTP methods, headers, MIME types, response status codes

backend - Query string parameters and class URLSearchParams

- Fetch API

- Network tab

- Cross-domain requests (CORS)

- Pagination

- Pagination with "Load more" button

- Infinite scroll with any library (practice with a teacher)

Module 11 - CRUD: interaction with private API based on mockapi.io

- GET, POST, PATCH/PUT and DELETE requests in Postman and JS code

CRUD
- Library axios (practice with a teacher)

Asynchronous Functions - Async functions with async/await

- Syntax comparison with then/catch

- Error handling with try...catch

- Parallel requests with Promise.all

- Refactoring the code for classes 19, 20 and 21 (practice with a teacher)

React
Lesson 1 - Comparison of MPA and SPA

- Virtual DOM Concept

Introducing React - Create-React-App Utility

- JSX as a Template Engine

- Render on Condition

- Components-Functions

- Data Transfer via Props

- PropTypes Package

- Developer Tools

- Basics of Component Composition

- Working with Collections

Lesson 2 - Vanilla CSS and SASS

- CSS Modules

- Styled Components

Styling the Component - Component Libraries

Lesson 3 - Component Classes

- Events and SyntheticEvent Object

Events and State - Internal State of the Component

- Asynchronous State Updates

- Lifting State

- Calculated Data
Lesson 4 - "Controlled Element" Pattern

- Forms: Working with <input>, <checkbox>, <radio>, <select>

Forms - Form Optimization Patterns

- Registration Form

Lesson 5 - Component Life Cycle

- Life Cycle Phases

Life Cycle - Methods of the Life Cycle of Component Classes

- Saving to localStorage (componentDidMount() and componentDidUpdate())

- Modal window (componentDidMount() and componentWillUnmount())

- Timer and memory leak with setState() without componentWillUnmount()

- Tabs (shouldComponentUpdate() and PureComponent)

Lesson 6 - Lifecycle Methods and HTTP Requests

- State and Component for Loading Indicator

Workig with API - State and Component for Error Handling

- Memory Leak When Unmounting a Component with an Active HTTP Request

Lesson 7 - URL Structure and HTML5 History API

- React Router Library

Navigation in the App - <BrowserRouter>, <Route>, <Switch> Components

- 404 Processing with Redirect

- <Link> and <NavLink> Components

- props, match, location, and history

- Nested Routines and Navigation

- Dynamic URL Parameters

- query-string and location.search

Lesson 8 - Static and Dynamic Module Import

- Webpack Chunks

Splitting Code - "Code Splitting" Pattern

- Pros and Cons of Code Splitting

- Separation at the Level of routes and Components

- React.lazy and Suspense

Lesson 9 - Higher-Order Components Pattern

- Render Props Pattern

Patterns and Context - React Context API

Lesson 10 - React Transition Group Library

- CSSTransition Component

Animation - Chaining Animations with CSSTransition

- Animation of Collections with TransitionGroup

- SwitchTransition Component

- Route Animation

Module 11 - Basic Redux Concepts

- Redux DevTools

Redux Basics - Feature Based File and Folder Structure

- React-Redux Package

- Reducers Composition

Module 12 - Redux Toolkit Library

- Reducing the Redux Boilerplate

Redux Toolkit - The configureStore() Function

- The createReducer() Function

- The createAction() Function

- The createSlice () Function

Module 13 - Interlayers Concept (Middleware)

- Stack Interlayer

Asynchrony
- Adding Layers to Redux Repository

in Redux - Redux Thunk Interlayer

- Redux Operations: Asynchronous Actions

- HTTP Requests

Module 14 - State Selectors

- General Principles of Memoization

Selectors and - Library Reselect

Memoization - Selector Factories

Module 15 - Introduction to JWT

- User Authorization Flow

Registration and
- Token Persist with Redux Persist

User Login - User Refresh by Token

Module 16 - Redirects During Authorization

- Component Redirect

Private and Public - Writing the PrivateRoute and PublicRoute Components

Routes - Advanced Redirects with location.state

Module 17 - useState

- useEffect

React Hooks - useCallback

- useMemo

- useRef

- useContext

- useReducer

- Custom Hooks

- Hook Libraries

Module 18 - useSelector

- useDispatch

Redux and React Redux - useParams

Library Hooks - useLocation

- useHistory

- useRouteMatch

Node.js

Lesson 1 - Introduction to Node.js and its Scope.

- Modular System Node.js. CommonJS Modules.

Node.js Basics - Global Variables (process, __dirname)

- Working with the File System: fs and path Modules.

- How to Debug Node.js. Debugging in the Browser

Lesson 2 - Work with JSON Files

- process.argv

Creating a Console - Creating a Console Application using the yargs Package

Application - Creating a Console Application Using the Commander Package

Lesson 3 - What is a Web Service

- Postman

Express Basics - What is Express

- Creating Middleware

- CORS

- Logger via Morgan

- What is REST API and CRUD Refresh.

- Removing Routes to a Separate File Using express.Router()

- Handling 404 and 500 Errors

Lesson 4 - CRUD in Express

- Extracting the Dynamic Part of the Route via req.params

CRUD in Express - Retrieving the Request Body (req.body) via express.json()

- Validation with Joi;

- Removal of Validation in a Separate Middleware;

- Creating a Wrapper for Handling controllerWrapper Errors


- What are Databases

Lesson 5
- What is MongoDB

- Creating a Mongo Account, Creating a Project on Mongo Atlas,

MongoDB and
Creating a Cluster.

Mongoose
- MongoDB Compass

- Working with MongoDB Database via Mongoose:

- Connection to the Base Using a String;

- The Need to Store the Connection String in .env/dotenv Packages;

- Mongoose Operation Principles : Scheme - Model - Collection

- What is REST API and CRUD Refresh.

- Removing Routes to a Separate File Using express.Router()

- Handling 404 and 500 Errors

- Mongoose: Create Schema (required, enum, default, unique, match)

Lesson 6
- Connecting Joi and Mongoose's Built-in Validation

- Model Methods:

Mongoose Schemes and


- find;

Methods. Deploy on
- findById;

Heroku
- create;

- findByIdAndUpdate;

- findByIdAndDelete;

- Deploy on Heroku

- What is Authentication and Registration.

Lesson 7
- Registration Including Hashing the Password Through

the bcrypt Library or the Crypto Method Built Into Node.js

Authentication
- Creating a JWT Token When Authenticating Through

the jsonwebtoken Library

- User Authentication Through Self-Written Middleware

Lesson 8
- Private Routes

- Adding Personalized Data

Authentication
- Reading Personalized Data via Populate

- Logout

- Pagination with skip() and limit()

- What is FormData, multipart/form-data and why multer is needed.

Lesson 9
- Form submission processin g

- More about fs and path for saving files locally (dir, file)

Working with Images


- Serving saved images via express.static()

- Cloud storage services as exemplified by Cloudinary

Lesson 10 - Why do you Need Automated Testin g

- Testing Pyramid: Which Tests Should be Used More. The Advantages and

TestsUnit Testing
Disadvantages of Each Type of Testing in the Pyrami d

- What are unit tests


Lesson 11 - The Difference Between Correspondence and Mailing

- Creating a Mailing List via nodemailer

Email Docker - Email Verification

- Docker Basics

Lesson 12 - WebSockets, Scope, and Examples

- Socket.io

WebSockets - Creating a Backend for the Chat


Career service consists of employment training

CV - Drafting a correct resume

Career Coaching - test interviews with our career consultant with


feedback

Mentorship
Checking homework within 24 hours

Technical assistance 24/7

Learning support from the very first day until the end

of the course with your personal mentor

LMS
All course materials in one place

Auto-check code for self-preparation

Doing homework directly from LMS

System of motivation in training


Project - based learning

HTML + CSS JavaScript React Node.js Final Prroject

+1 personal project
+1 team project +1 personal project
+1 team project +1 personal project

in the process
in the process

of homework of homework

implementation implementation

+1 personal additional

project (mock-up from Personal project Team project Total number of projects
practical classes)

+1 team project
2
2
3
7

2 required 2 additional 3 required

Minimum System Requirements

OS: Windows 10, 64 bit

PR OCESSOR: Intel Pentium (R) CPU 2117U @ 1.80GHz × 2

R AM: 4 GB

Hard Drive Space: 20 GB


What does your Learning System look like
You can get acquainted with the interface of LMS on the video
Start a career in tech with GoIT

and create your own success story

BOOK A CALL

GoIT
GoIT Reviews
Google

web page web page reviews


Laern abot us See what our students think Let us help you

FreeBootCamp

Corporate Headquarters
Beneficiary address: 541 Jefferson Ave, Ste 100,
Redwood City, CA 94063

Phone: 1(332)456-3354

Email: info@goit.courses

You might also like