Online: Software Engineering Immersive
Online: Software Engineering Immersive
Online
t Software
Engineering
Immersive
3 Overview
4 The Power of Learning Ruby and JavaScript
5 Curriculum Overview
6 Full Stack Web Development
7 The Full Stack Journey: An In-Depth Look
9 What Makes a Software Engineer?
10 How We Learn
11 Program Pace and Schedule
12 Jobs Outcomes
13 Contact Us
2
Overview
Being a software engineer requires more than knowing how to code or build a web app. During the time spent
with Flatiron School’s online community, students learn to think, and build, like software engineers. In each
curriculum module, students develop key skills through interactive labs, lectures, and close collaboration,
showcasing progress through Portfolio Projects. While the bulk of the material covered occurs within the Ruby
and JavaScript ecosystems, we carefully design our curriculum to prepare students to launch software
engineering careers, independent of any specific language or technology.
By the completion of the program, students have done much more than simply build technical skills: they have
maintained technical blogs to show they can credibly talk tech; they have become a part of the tech community;
and they have established a portfolio of personally-relevant, functional web applications to show employers as
they enter the job-search phase with the support of our Career Services team.
Proven Results
Flatiron School students get jobs — period. In our most recent Online Outcomes Report, 94% of students were
hired. As a graduate of our Online Software Engineering course, job-seek with the support of our Career
Services team. From weekly 1:1 career coaching sessions, to mock interviews, to employer evangelism, our
seasoned Career Services team is dedicated to helping our students launch lifelong careers within 6 months of
graduation, or we’ll refund your tuition (see eligibility terms).
Download the full details of our 2018 Online Outcomes Report at https://flatironschool.com/outcomes/
See our eligibility terms at https://flatironschool.com/career-services-commitment/
3
The power of learning
Ruby and JavaScript
WHY DO WE TEACH THESE LANGUAGES TO ASPIRING DEVELOPERS?
MASTERY-BASED PROGRESS
Our program is broken into five curriculum modules. Each module concludes with a comprehensive project
meant to bring together students’ competencies and demonstrate them in their portfolios. Students work in
teams and directly with instructors to ensure they’ve mastered key concepts before progressing. If students
need additional support, they receive additional direct mentorship, and, if necessary, they’ll have the opportunity
to repeat a module at no extra cost.
LIFELONG LEARNING
Graduates join an active network of successful software engineers. For Flatiron alumni, engaging with our
community doesn’t stop at graduation—and nor do opportunities to learn. Students enjoy lifetime access to our
Career Services team and extensive employer network as they approach future career changes.
5
CURRICULUM OVERVIEW
Module 3: JavaScript
Students gain a thorough understanding of Javascript – crucial for front-end developers.
Solo Projects
After completing four curriculum modules focused on group projects, students work with instructors to come up with solo
project concepts and spend dedicated time building truly sophisticated applications on their own. Students receive plenty
of instructor feedback along the way while diving deep into various advanced technologies needed to bring their concepts
to life.
6
CURRICULUM OVERVIEW
Ruby Git
Students learn fundamental concepts in programming
Students begin exploring version control using git
including repls, methods, loops, variables, variable
commands including with cloning, branching, merging,
scope, conditionals, blocks and iterators, case
rolling back commits, forking, and submitting pull
statements, arrays, scope, hashes, regular expressions,
requests.
iterators, enumerables, data structures, nesting, and
more. Topics build in complexity and provide the
foundation for the rest of the course.
Object Relational Mapping & SQL
ORM (Object Relational Mapping) allows programmers
We help students embrace error messages as clues
to query and manipulate data from a database using an
and gain a fundamental appreciation for failure as the
object-oriented paradigm. Students learn to write and
only way to learn and progress. Students gain
manipulate data using the Ruby language.
experience in debugging with various gems and tools
designed to track down issues in code.
They gain an appreciation for the structure of a
database, how to map out tables, and the difference
between the various table relationships. Students learn
HTML & CSS how to wireframe database structures, as well as how
Students master the basic building blocks of how the to link their applications to a database. They also cover
web is rendered and become fluent in the language that SQL, domain modeling, relational database theory,
makes the web beautiful. They additionally learn how to schema architecture, and the Object Relational Model,
conceive of and build UIs for web apps by writing including the ActiveRecord pattern.
well-structured HTML and CSS , as well as using SASS
to create efficient and organized front-ends.
Rack
This unit is designed to give students an understanding
of HTTP and how the Internet works, as implemented
Object Orientation through the Ruby web interface of Rack. Students build
Students gain experience with Object-Oriented their own HTTP servers and learn how the request /
Programming and understand how it allows response model of the web works. Their servers listen
programmers to bundle code and create reusable to HTTP requests and respond with well-formed HTML
objects and methods, which allows for increasing responses. Students learn to understand the web with
complexity in software. the few abstractions provided by the tool set.
7
THE FULL STACK JOURNEY: AN IN-DEPTH LOOK | Continued
Sinatra React
Sinatra is a Domain Specific Language (DSL) written in Using plain JavaScript with large web applications
Ruby for building web applications on top of Rack. This quickly becomes unruly. Initially created by Facebook,
framework provides students with exposure to design React is the premier JavaScript framework for building
patterns in web applications. The topics covered in this fast web user interfaces. This unit starts with the
unit include architectural patterns such as REST fundamentals of components. Students learn how to
(Representational State Transfer), MVC build the basics of React before they are taught how to
(Model-View-Controller), HTML Forms, ERB (Embedded use React itself. After building a minimal React,
Ruby) and template rendering, and application students conquer the complexities of React and then
environments. quickly move into learning about state management
with Redux. After completing this unit, your applications
will effortlessly consume APIs, render data quickly, and
Rails scale as application complexity increases.
With a foundation in the Ruby language as well as the
architecture of the World Wide Web, students utilize
Rails to build complex, functional web applications
from the ground up. They learn the file structure of
Rails, how to set up their own databases, how to draw
routes and create Rails forms, gain an understanding of
the asset pipeline, and bring it together by integrating
front-end design skills.
JavaScript
JavaScript powers the user experience of the web.
Students learn the basics of JavaScript syntax, its
functional architecture, and different approaches to the
object model. Students then learn the Document Object
Model (DOM) Javascript API provided by the browser to
dynamically interact with HTML. Students use native
“vanilla” JavaScript (versus a library). Students then
explore the popular Javascript frameworks React and
Redux.
8
What makes
a Software
Engineer?
While the linear progression of our curriculum is
focused on building technical skills, our aim is to
teach students how to become software
engineers—which is distinct from simply knowing
how to code. Students engage in a number of
activities that hone their communication and
collaboration skills and immerse themselves in the
technical community, helping build the foundation
needed to grow as software engineers in the
future.
PORTFOLIO PROJECTS
At the conclusion of each program module, students build advanced Portfolio Projects to demonstrate both
the technical skills they’ve gained in the module and their creativity. Previous projects have won prestigious
tech awards, become MVPs for startups, and been presented at the White House. Portfolio Projects represent
an opportunity for students to explore specific technologies that interest them while building a portfolio of fully
functional web applications to impress employers.
ROBUST BLOG
All Flatiron students maintain technical blogs to show they can not only write code, but also communicate how
that code works – an essential skill for software engineers.
TECHNICAL PRESENTATION
Students build their credibility as engineers and immerse themselves in the technical community by attending
– and challenging themselves to present – at technical Meetups and conferences.
9
HOW
WE
LEARN.
Open curriculum
All of Flatiron School’s courses are
powered by Learn.co, the world’s most Our industry-tested curriculum has given over
sophisticated platform for teaching and 1,500 Flatiron graduates the skills to become
learning code. software engineers and thrive in their careers. And
because our curriculum is open-source, it stays
more current than any other. Students are
encouraged to suggest changes directly from our
online platform, and receive public credit for doing
so. We continually improve our coursework in
reaction to feedback and real-world changes, and
our edits are supplemented by hundreds of student
10
Program Pace & Schedule
At Flatiron School, we know that how you choose to study is as integral to your success as what you’re
learning. Paired with our proprietary online learning platform, Learn.co, and individualized support from an
Educational Coach, all students have access to a personalized learning experience. Choose from three different
program options, each tailored to today’s online learner.
Admissions + Admissions +
Admissions
Admissions Technical Technical
Interview
Interview Interview
Career Services
YES YES YES
Support
1,000+ Curriculum
YES YES YES
Hours
Educational Coaching 2x
YESper month 1x per month
YES 5x package
YES
Money-back
YES YES YES
Guarantee
All courses options include career services support, a money-back guarantee, and provide the same level of
rigorous curriculum designed to make you a well-rounded software engineer no matter when you graduate.
11
Job Outcomes
At Flatiron School, our mission is to enable the pursuit of a better life through education. So far, hundreds of
students have trusted us with their futures and we’re proud to serve these students by pioneering and
committing to strict standards of outcomes reporting. Through our independently-verified 2018 Online
Outcomes Report for our Online Web Developer Program (now offered as our Online Software Engineering
Course), we provide students access to the outcomes data necessary to make well-informed decisions about
their educational investments. We’re proud to put third-party verified outcomes first and set a standard of
transparency in educational results.
Download the full details of our 2018 Online Outcomes Report at https://flatironschool.com/outcomes/
Software Technical
Engineering Teaching Roles
Contract, Internship,
Full-time Role Apprenticeship, Part-time
or Freelance Role
12
Contact Us
For more information, please check out our website at
www.flatironschool.com or contact us at
admissions@flatironschool.com
13