Skip to content

Latest commit

 

History

History
117 lines (96 loc) · 7.46 KB

curriculum.md

File metadata and controls

117 lines (96 loc) · 7.46 KB

Curriculum

Curriculum version: 2.0.0 (see CHANGELOG)

Prerequisites

  • Access to linux based terminal on any of the following:
    • Mac or Linux computer
    • Linux virtual machine
    • If you are working on Windows, your phone, tablet, or Chromebook click here.
  • You have an aptitude for math and have completed pre-algebra.
  • chat

The Command Line

The command line, or terminal, is the most fundamental tool for a software engineer. In this foundational course you will learn how to interact with computers through commands and code! Your journey to becoming a software engineer starts here.

Topics covered: the command line basics of programming linux text editors shell scripting

Courses Duration Effort Prerequisites Discussion
Intro to Linux 2 hours 2 hours/week none chat
Learn the Command Line 8 hours 8 hours/week none chat
Text Editing with Vim Vi iMproved 18 hours 8 hours/week Learn the Command Line chat
LPI Linux Essentials Certification 16 hours 8 hours/week Learn the Command Line chat
The System Administrator's Guide to Bash Scripting 16 hours 8 hours/week Text Editing with Vim Vi iMproved chat
YAML Essentials 3 hours 3 hours/week The System Administrator's Guide to Bash Scripting chat
YouTube Videos 3 hours na na na

Git Certification

Git is a version control system used by software engineers to manage their code. It's a foundational tool used everyday by virtually every software engineer.

Topics covered: basic git commands branching patters fork and pull code review

Courses Duration Effort Prerequisites Discussion
Markdown Mastery 8 hours 8 hours/week The Command Line chat
Source Control with Git 20 hours 20 hours/week Markdown Mastery chat

Linux Certification

This is an optional course. Linux is everywhere! Nearly all the worlds servers run Linux. This makes Linux a valuable job skill in its own right. If you are enjoying bash, and want to cultivate an employable job skill immediately, obtain your linux certification with this optional course. After completing this course you will be ready to take your certification exams:

Topics covered: linux administration automating common tasks on linux

Courses Duration Effort Prerequisites Discussion
Red Hat Certified System Administrator (EX200) 40 hours 20 hours/week The Command Line chat
Red Hat Certified Engineer (RHEL 8 RHCE) 80 hours 20 hours/week Red Hat Certified System Administrator (EX200) chat

Docker Certification

Docker is a technology used by most software engineers to distribute their code. Known as container virtualization, this management tool for distributing code is a foundational tool for all software engineers. Everything you need to know about the exam can be found here.

Topics covered: docker concepts building docker images using docker registries Docker Community Edition (DCE) Docker Enterprise Edition (DEE)

Courses Duration Effort Prerequisites Discussion
Docker Certified Associate (DCA) 60 hours 20 hours/week The Command Line chat

AWS Certification

This is an optional course. Amazon Web Services (AWS) is the leading cloud computing platform in the world. Master the essentials of AWS and earn a valuable job skill. No programming knowledge is needed, and no prior AWS experience required. After this course you will be ready to take your exam, opening a world of job opportunity. While you do not need this certification to pursue your JavaScript certification, it is highly recommended since so many employers use AWS.

Topics covered: identity and access managment cloud networks storage compute messaging data encryption APIs

Courses Duration Effort Prerequisites Discussion
AWS Certified Solutions Architect Associate 80 hours 20 hours/week The Command Line chat

Pick a Track

Once you have developed basic skills you need to pick a track to pursue concentrated study. Please pick form the following tracks:

  1. Web Developer. This track is ideal as a prerequisite for Front End Software Engineer apprenticeships. You will learn Javascript, HTML, CSS and React.
  2. Data Engineering. Big data is defining the modern software landscape. Learn foundational skills for apprenticeship opportunities in the data engineering and ML space. You will learn Python, SQL, and Apache Spark.