Being a software engineer takes more than knowing how to code or create a web app. It requires learning to think and build like a software engineer — from developing coding mastery to gaining an understanding of how products are designed and managed.
We designed our Online Software Engineering Curriculum to give you the necessary skills in both back-end and front-end programming technologies to become a hirable full-stack developer — able to land your first job in tech and leverage it into a lifelong career.
You’ll develop a foundation of programming fundamentals, and conquer the concepts of object-oriented programming. You will work with APIs (Application Programming Interfaces), become proficient in database modeling and ORM (Object Relational Mapping), understand the concept of the MVC (Model View Controller) Framework, and execute application deployment. These concepts are taught using test-driven development, allowing students to gain a real-world programming experience, while giving instructors the ability to check on student progress with ease. After completing each section of the curriculum, students are required to complete a portfolio project and schedule a time to assess their project with an Instructor (detailed below).
Finally, because being a professional developer requires you to constantly learn and self-teach as you encounter difficult challenges or new technologies on the job, this program focuses heavily on building this skill of self-teaching, with the right amount of structure and support. Software development moves too quickly for any skill to remain relevant forever. During the program, you are encouraged to work with your classmates to solve problems, as well as use various online tools (and lots of Google searching!) to discover new techniques that may not be covered explicitly within the curriculum — a tactic professional developers use every single day.
|Programming Fundamentals||Section 1||OOP, Ruby||You will get comfortable with object-oriented programming, learning to “scrape” websites with Ruby and build a command line interface program.|
|Web Frameworks||Section 2||HTML & CSS, SQL, ORM, Sinatra||After diving into HTML5 & CSS, you will learn two key Ruby frameworks, first mastering the fundamentals of web programming with Sinatra before experiencing how quickly you can build incredible apps with Rails.|
|Front-end Frameworks||Section 5||React, Redux||You will learn to build productive, scalable front-ends with React and Redux, creating slick, functional, reactive code with Redux as a state manager and Rails as the back-end JSON API.|
In addition to embracing an open-source curriculum — to reflect industry trends and feedback — Flatiron has a dedicated Curriculum team who is consistently revisiting content to make sure we are sharing up-to-date information.
If you see a curricular error, please report it by clicking on the “Flag” icon at the top of the lesson. This is where you’d report something like “When I type the command that’s listed, the Terminal reports: ‘Not Found’.”
Differentiated from a curricular error, there are also inevitable “bugs” that exist in the Learn environment. If you’ve completed a quiz or a lab, and for some reason you can’t move on to the next lab, please submit a bug report to email@example.com. This is another key skill of a developer - being able to articulate and document your findings.