Can you tell me about your background and experience before you joined Flatiron?
I have been programming since middle school. I'm one of those kids who discovered coding at an early age, and fell in love with it. In high school, I taught at a computer camp for middle schoolers. That’s when I caught the teaching bug.
I went to Carnegie Mellon to study computer science and information systems; but it got very theory based, which didn’t really swing with me. I wasn't good at it. The reason I love programming is because I love making and solving things. I couldn't figure out how the deep theory was connected to building better software, so I dropped computer science and picked up economics and information systems. During school I was TAing for CMU courses: statistics, economics, Intro to C, and Rails. In my senior year, I helped write curriculum for an iOS course.
When I graduated, I actually just wanted to travel, so I joined IBM and consulted. I was looking for a way to give back to the community and wanted to volunteer to teach at the public library, but they needed people during the week when I wasn’t available. I then heard about Flatiron School through a friend of a friend who was in the school’s second ever Web Development class. I got in touch to see if I could help out on the weekends, and it eventually became a full-time job. I'd always loved teaching and programming, but I’d never thought of it as a career.
What did you think of Flatiron School at first?
I really liked how instructors spent so much time with students in these immersives, building really strong relationships. I also realized that people were quitting their jobs, spending a lot of money, and just dedicating their life to this so it’s our duty to make sure they learned as much as possible. It is on our instructors to make sure they have an amazing experience just as much as it is on the student.
What has your progression been since you started at Flatiron School?
I started working at Flatiron early July 2013. For the first year and a half, I was the lead instructor for the iOS class. We're a small company, and if a teacher was sick, or needed someone to cover, I'd help out. I would also represent the company at events.
Then I started helping Avi Flombaum, our co-founder and dean, with onboarding new instructors, instructor training, and some curriculum development stuff. We were trying to build processes around how we capture issues, how we respond to them, etc. Then we found another Lead iOS Instructor who took over the iOS class and I was able to become Director of the Faculty. In that role, I was working on instructor training, hiring, and mentorship of new instructors – coaching them through the process of teaching, and emotional support for the students.
This year, I became VP of Education. I oversee the online curriculum, our in-person instructors, as well as help out with some of the online instructors. So I'm interacting with the students, but never as much as I’d like. I am currently teaching our iOS course, and I also do a lot of guest lectures in the web development courses.
Tell me about the launch of Flatiron School’s online curriculum. How did that work?
It's nice to no longer be constrained by 12 weeks. We now have the ability to give students extra work during or after the program if there are technologies they want to learn or practice.
Is this Learn curriculum just for the Web Development class or your other classes too?
The Learn curriculum is currently just for Web Development. We are working on some stuff for iOS. The one big push we're doing right now is the move from Objective-C to Swift. We're building in a lot of curriculum work around Swift as well as more recorded lectures for Objective-C.
How many students and teachers do you have in each program?
We have 30 students each in the three in-person immersive classes (two Web Development, and one iOS). Each immersive class has a lead instructor and two teacher assistants. For the online program, we have a very different model around how instructors work. We have a network of “Learn Experts” who act as mentors and are available anytime to support students.
Can online students start anytime and how does that impact the sense of community?
Students start whenever they like. One of the biggest features of the online program is flexibility; flexibility to start whenever you like and to build relationships with people who are either close to you geographically or in the same spot in the curriculum, even if they’re in different time zones. We recognize that when you think of amazing educational experiences, you think of the people you did it with, and your instructors. So we want as much as possible to really prop that up and facilitate the social aspect of education.
What’s the structure of the online curriculum?
Essentially the online and in-person program are the same. All of the online curricula came from the immersive class. The immersive is where we beta test new stuff, and push the edges of what's possible to teach within a short amount of time. Because we have 30 students with three instructors, we're able to create really tight relationships with our students. We use these relationships to figure out the pacing and to get a tight handle on how fast to go.
How often do you update or iterate on the curriculum?
It's a pretty constant process. It’s an open source curriculum so it's constantly changing. We get 30 to 60 issues or pull requests per week. Some are from students, some are from instructors, and they're getting merged at a rate of about 50 a week. It's great to get feedback from students and be able to quickly iterate and push a new change within days.
Instructors are moving stuff around and playing with ideas all the time. Last semester we played with teaching Ember, and our instructors just pulled it together on their off time so we could see how it worked and if we could teach it. Having open source curriculum and having a standard developer flow of GitHub and pull requests means that it's frictionless for us to try out new content and approaches to teaching, so we do it all the time.
How do the instructors stay aware of all the little changes to the curriculum and make sure they're teaching the most up to date version?
It’s not easy – but super important. Before teachers deploy new labs, they'll take a look at the commit history of those labs and see the changes another teacher has made. Everything is in there.
For the larger changes – for instance, when we added Angular – the instructors help us build the outline and they review it as content is developed.
How do the in-person on-campus students use the Learn platform?
We run the whole course through Learn, but usage is a bit lighter compared to the online students. Although the students are able to hit the “ask a question feature” in Learn, it’s more natural to ask a teacher in person because they’re standing right there. We do use Learn a lot for its pacing. It shows us how the students are progressing. We can actually look at the data to see how many tests they’ve passed, how quickly they are working, and if they’re engaged to be a bit more data-driven in our decisions.
How do you assess students’ progress through Learn? Can students fail?
All of Flatiron School’s curriculum has automated tests to make sure students are finishing tasks. For the online students, we have live assessments with an instructor throughout the course. For the in-person programs, there's no real failing. It's more just discussion with teachers: “here is where you didn't succeed, you have some extra areas that you need to study up on.”
In the online program, students who fail assessments have to go back and make some modifications before moving on. It's really important that anyone who graduates from Flatiron School really knows their stuff. If you happen to get through some content without understanding it, then we want to make sure that you understand it before you move forward. If you just compound shaky on top of shaky, when you get further into the curriculum - to Rails and Angular – it's going to be difficult.
If students are struggling, we step in immediately and provide additional materials in the form of Learn lessons, extra one-on-one time, or extra one-on-small group time. We also continue to work with students after they graduate if they need additional practice ahead of interviews.
What kind of person do you think is the ideal student to do the in-person Flatiron School bootcamp?
I think the person that really values it is someone who has just fallen in love with code and wants to be completely immersed: physically, mentally, and philosophically surrounded by people who are passionate about coding. They want that really close knit relationship that comes from constantly interacting with your teacher. You sit next to your teachers, you have lunch with your teachers – so if you really love being driven by instructors and you can come to New York for three months, it’s a great option.
Learning this stuff is hard, so you need a community to support you. That’s true whether you’re learning online or in person. Both programs really embrace that concept.