27.02.2020 Views

Microverse-Syllabus

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

microverse

SYLLABUS

Microverse Software Development Program

SYLLABUS / 2020


Software Development Program

Duration​: 6-8 months

Schedule (Full-time)

MORNING

➔ 8:00 am - 8:45 am​:

➔ 8:45 am - 9:00 am​:

➔ 9:00 am - 12:00 pm​:

Coding Challenges with Stand-up Team

Challenge review with Stand-up Team

Remote Pair Programming with Coding Partner

BREAK

➔ 12:00 pm - 1:00 pm​:

Lunch break

AFTERNOON

➔ 1:00 pm - 4:45 pm​:

➔ 4:45 pm - 5:00 pm​:

➔ 5:00 pm - 5:15 pm​:

➔ 5:15 pm - Onwards​:

Remote Pair Programming with Coding Partner

Prep for your stand-up call

Call with Stand-up Team

Optional catch-up and homework time

The program is currently available in two time zones​:

1. Americas: 8 am - 5 pm UTC-6

2. Europe/Africa: 8 am - 5pm UTC+1

Microverse Software Development Program

SYLLABUS / 2020


Section: Main Curriculum

COURSE 1: HTML & CSS

Basic HTML

Displaying and

Inputting Data

CSS

Design and UX

Responsive Design and CSS

Frameworks

Advanced CSS

Linking Internal and External Pages

Working with Images, Video, and Other Media

Project #1: Youtube Clone

Tables in HTML

Ordered and Unordered Lists

Forms for Collecting Data

Project #2: Mint.com Clone

CSS Basics

The Box Model

Floats and Positioning

Flexbox

Grid

Project #3: New York Times Clone

Best Practices

Backgrounds and Gradients

Project #4: Apple.com Clone

Introduction to Design and UX

Fonts and Typography

CSS Grids

Project #5: Smashing Magazine Teardown

Responsive Design

Project #6: The Next Web Clone

CSS Frameworks (e.g. Bootstrap and Foundation)

Project #7: Newsweek Clone

Animations, Subtle Effects, and Compatibility

Using CSS Preprocessors to Save Time

Project #8: Grid-Based Framework

Microverse Software Development Program

SYLLABUS / 2020


COURSE 2: RUBY

Basic Ruby

Intermediate Ruby

Testing Ruby with RSpec

Databases

Ruby Building Blocks

Project #9: Building Blocks

Advanced Ruby Building Blocks

Project #10: Advanced Building Blocks

Object-Oriented Programming

Project #11: Tic Tac Toe

Test Driven Development

Introduction to RSpec

Project #12: Tic Tac Toe (II)

Databases

Databases and SQL 3

Project #13: SQL

COURSE 3: RUBY ON RAILS

Introduction to Rails

Routes, Views, Controllers,

and Assets

Active Record Basics

Forms and Authentication

Advanced Forms and Active

Record

Project: Getting Your Feet Wet

A Railsy Web Refresher

Deployment

Project #14: Let's Get Building

Routing

Controllers

Views

The Asset Pipeline

Project #15: Basic Routes, Views, and Controllers

Active Record Basics

Project #16: Building With Active Record

Form Basics

Project #17: Forms

Sessions, Cookies, and Authentication

Project #18: Authentication

Active Record Queries

Active Record Associations

Project #19: Associations

Microverse Software Development Program

SYLLABUS / 2020


Active Record Callbacks

Advanced Forms

Advanced Topics

Project #20: Build a Social Network

COURSE 4: JAVASCRIPT

Organizing your JavaScript

Code

JavaScript in the Real World

Asynchronous JavaScript and

APIs

Testing JavaScript

JavaScript and Rails

Introduction

Objects and Object Constructors

Project #21: Library

Factory Functions and the Module Pattern

Project #22: Tic Tac Toe

Classes

ES6 Modules

Project #23: Restaurant Page

OOP Principles

Project #24: Todo List

Linting

Dynamic User Interface Interactions

Forms

Webpack 2

ES?

JSON

Async

Working with APIs

Async and Await

Project #25: Weather App

Testing Basics

Project #26: Testing Practice

More Testing

Project #27: Battleship

Using Ruby on Rails For Your Back End

Project #28: Where's Waldo (A Photo Tagging App)

Microverse Software Development Program

SYLLABUS / 2020


COURSE 5: REACT & REDUX

Mastering React

Mastering Redux

Intro to JSX

React Components

Working with Props

Stateful Components

Components Lifecycle

Inline Styles

Intro to Server-Side Rendering

Project #29: Calculator

Redux Store

Store Listener

React & Redux

Project #30: Bookstore CMS

Section 2: Algorithm & Data Structures

INTRO TO CODING CHALLENGES

Warm up by solving 20 different coding challenge with your stand-up team.

INTRO TO ALGORITHMS & DATA STRUCTURES

Basic Data Structures

Stack & Queue Challenges

Data Structures

Nodes

Lists

Complete LinkedList

Dynamic Arrays

Stacks

Queues

Min Stack

Sliding Maximum

Balanced Brackets

Transposition

Stacks or Recursion

Microverse Software Development Program

SYLLABUS / 2020


Recursion

Trees & Graphs

Trees & Graphs Challenges

Map Sets & Hashes

Basic Recursion

Binary Search

Divide and Conquer

Towers of Hanoi - Part 1

Towers of Hanoi - Part 2

Backtracking Recursion

Trees

Tree Traversal

Binary Search Tree

Graphs

Depth-First Search

Breadth-First Search

How Tall is the Tree?

Is it a Search Tree?

Is it balanced?

Connected Components

Find the Cycles

The Greatest Peaks

Explorer Maze Escape

Sets

Maps

HashTables

HashSet Data Structure

HashMap Data Structure

More Practice

Sorting Algorithms Insertion Sort 1

Insertion Sort Itself

Correctness and the Loop Invariant

Running Time

Counting Sort 1

Simple Counting Sort

Prepare for Full Counting Sort

The Full Counting Sort

QuickSort1

Simple Quick Sort

Quick-Sort Advanced

Quick Sort Running Time

Microverse Software Development Program

SYLLABUS / 2020


Sorting Challenges

Algorithms for Interviews

Advanced Graph Algorithms

Rosetta Challenges

Merge Sort I

Full Merge Sort

Index Match

Time Scheduler

Maximum Time Range

Smallest Difference

The Median

Find the Duplicates

Basic Programming Problems

Running Time and Big-O

How to Answer Questions

Algorithm-Solving Strategies

Data Structures

Trees and Graphs

Recursion and Sorting

Software Design

Additional Resources

Weighted Graphs

Shortest Path on a Weighted Graph

Minimum Spanning Tree

ABC Problem

Cut a Rectangle

Make Change

Closest Pair

Equilibrium index

ADDITIONAL PRACTICE

While going through Career Prep you will review some of the computer science

concepts previously learned and apply by solving a curated list of Leetcode

challenges that are often asked in job interviews.

Microverse Software Development Program

SYLLABUS / 2020


Section 3: Career Prep

Work with your dedicated career coach and pair programming partners to get ready

for job interviews, start applying to jobs, and learn how to negotiate.

Online Presence

Interview Prep

Finding a Job

Portfolio

Resume

LinkedIn

Github

AngelList

Open Source

Introduction to job interviews

Technical questions

System Design questions

Behavioral questions

Questions to ask

Psychological tricks

Negotiation tips

Mock interviews

Graduation

Job types

Startups

Your dream job

Other jobs

Microverse Software Development Program

SYLLABUS / 2020

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!