The team at Flatiron School is launching a data science bootcamp to keep up with the rapid growth in demand for data science skills. After running their Software Engineering Immersive for five years, they’re bringing the lessons they learned to the new Data Science Immersive. Flatiron School’s Lead data science instructor and curriculum writer, Jeffrey Katz, tells us about crafting the curriculum with input from local employers, the types of projects students will build, and how the careers team will leverage Flatiron School’s existing employer network to help students find jobs as data scientists.
What was your background in data science before joining Flatiron School?
I was an economics and political science major in undergrad, and I took statistics, multivariable calculus, and linear algebra classes as part of my economics major. After that I went to law school at Columbia University.
Flatiron School has been teaching software engineering for five years now – why is now a good time to launch a data science program?
In 2016, our co-founder Adam Enbar said that one of Flatiron School’s goals going forward was to launch a new course. After the WeWork acquisition, we had resources to start new initiatives, so the team asked me to start thinking about what a data science program would look like.
Data science has been a buzzword, but over the last few years, the number of data science positions has grown at a rapid rate. There used to be one data science job for every 20 software engineering jobs, and now we see one data science job for every five software engineering positions, so the field is really growing.
There is also a range of careers available to somebody graduating from a data science bootcamp. In our Software Engineering Immersive, graduates can go into front end or back end. Similarly, with data science – you can go into careers doing machine learning, big data, data journalism, or the sort of analysis you might see on FiveThirtyEight. We liked the idea that we could teach data science to people with a range of interests, and have them pursue a similar range of interests after graduating.
Are there any prerequisites to get accepted into the data science program? What does the application process look like?
One thing I’m really excited about is that we’ve developed this course with no experience prerequisites. There is a technical interview before the course, but we are not looking at your resume to make sure you have coded before, or worked as a data analyst, or had some math or science experience in undergrad. Flatiron School is more interested in your enthusiasm, curiosity, and whether we think you can be successful in the program. In the Software Engineering Immersive, some of the best students I taught were not from a technical background – they were artists or musicians and ended up becoming excellent engineers. We wanted to give the same opportunity in the data science program.
At the same time, candidates should be ready for the technical interview. Our pre-work aims to ramp candidates up in programming, essential math skills like calculus, and a couple of machine learning algorithms. We want to give each student the best shot to learn the material, even if they don’t have a formal background. Candidates don’t have to go through all the prework material to be ready for the technical interview – if they have a background in programming and some calculus, then they can do Labs to check their understanding, then apply to do the technical interview. The application process is an opportunity to see if each candidate is both a cultural fit and if they will be successful in the course.
As long as someone is interested, we want to give them the best shot that we can at enrolling.
What is the structure, schedule, and learning style in the Data Science Immersive?
Students come in at 9am and start working on a lab or a discussion question, and go through reading materials to prepare for that day’s lessons. The first lecture is generally one hour long, from around 11am to 12pm. After lunch, we have labs where students have the opportunity to work with each other. We love to get students pair programming to make sure they understand the material, and are ready to move onto the next topic. Students will then get more reading materials to prepare for an afternoon lecture at around 2pm. And after that – more labs. If students finish their day at 6pm, that’s great, but many often stay later. My philosophy with an intense program like this is that after 9pm, you’ve done your job for the day and it’s time to take a break and get ready for the next day.
Which technologies have you decided to teach in the data science curriculum and why?
Flatiron School’s VP of Education, Joe Burgess, and I did a lot of research – talking to employers about what data science meant to them, what the future looked like, and what skills would be relevant going forward. The main debate was Python versus R, and we decided to teach Python. The ability to collect raw data is a core component of data science, and Python programming skills are great for scraping data and using APIs. That would be a little trickier if we taught R.
Our philosophy at Flatiron School is to teach the fundamentals. Tools change, libraries get updated, so while we definitely teach machine learning and data science libraries, we’re focused on making sure people have fundamental Python skills. Once they have those programming skills, we’re confident that our students can keep learning new Python libraries on their own as they move forward in their careers.
The course is made up of five, three-week modules:
What’s an example of a project that students work on in the final three weeks?
One good example is a search and recommendation project. A student could be looking on Yelp for a Chinese restaurant that’s also great for drinks and has a good social environment, but that information may not be searchable within Yelp reviews. The student can write an algorithm that will mine that information. That requires many different techniques that are covered in the course: we need to gather the data, say what the likelihood is that a restaurant fits your requirements, and use machine learning and deep learning for textual analysis.
Were there any lessons from teaching Flatiron’s software engineering immersive, that you have been able to bring to the data science program?
One of the things I learned is that the students should be having the most fun, so as an instructor, you can’t steal that from them. When I wrote the pre-work for the data science program, I ended up rewriting a lot of it to challenge students to build their own machine learning library. When students can explore the material on their own, they will fall in love with the subject, and see how rich and fun it is. If you teach people to love a subject, they will wind up being successful.
I also looked at the underlying principles of Flatiron School and how they translate to a new topic. In the Software Engineering Immersive, we teach fundamentals and don’t shy away from the big concepts, so we wanted to do the same for the data science program. We needed to cover the thoughts and philosophies behind data science, but also make the course practical so that students can get jobs.
Tell us about your instructors for this course – what sort of backgrounds do they have?
Our instructors come from a variety of backgrounds. I’m the lead instructor and I’ve been teaching at Flatiron School since June 2015. Instructor Mike Kane has been teaching data science for a few years at another bootcamp, has experience in curriculum development, and has an excellent background in machine learning and statistical programming. The other instructor is Lore Dirick, who has a PhD in Business Economics and Statistics, a background in education and curriculum development, and has been working closely on our deep learning curriculum.
How will you assess or track how students are progressing through the new curriculum? How do you support students who are struggling?
One of our key metrics is to check for understanding. I love to give students problems in the middle of the lecture. My main philosophy in teaching is that I shouldn’t be the one doing all the fun stuff! I want to see what the students know. So during lectures, we’re assessing students’ knowledge, and I’m assessing myself on how I’m conveying the material.
At the end of each module, we have a mini project, which is a great opportunity for us to gauge the students’ understanding. Before the project, if we see a student is struggling, we might suggest the student spend that time reviewing the material, and doing more of a guided project before moving onto the next module. That way we can keep students on the same page as they move forward with material, and I can make sure I’m moving at the right pace.
If a student is falling behind, one technique is to encourage lots of group work – students can crystallize their understanding by explaining a concept to someone else. Then, if a student needs extra support, the other instructors and I will provide that. This is also when Flatiron’s community really comes into play – I’ve come back to the classroom at 8pm at night and seen a student teaching their classmates.
How will career services work for the data science program? Will students get the same Flatiron School money-back guarantee?
Yes, there is a money-back guarantee for the data science program. Our career services department is already talking with employers – many of which have hired from our Software Engineering Immersive and are now interested in hiring data scientists. We’ve already seen overlap from our existing network of employers. I saw this first hand when talking to employers for curriculum research – when employers heard we were developing a data science course, they asked to be a part of it. They were really engaged and gave us input.
What types of jobs will graduates of this course be prepared for? What sort of companies will be interested in hiring them?
Students will be prepared for a range of jobs. Python and SQL are great skill sets to learn for data science, but are also popular programming languages for back end engineers. Another route is statistical programming, if graduates want to do data analysis with programming. The other option is a machine learning role, which involves more engineering than statistical programming does.
When you talk to companies, it’s clear that everyone has a different idea of what a data scientist does. To become a data scientist you need to have a range of skills, to make sure you can do what your employer needs. As the field matures, you might see students becoming more specialized, but right now we want to make sure that we’re training students in the range of skills that companies are looking for.
Almost every type of company needs data scientists. Companies are collecting so much data, and want to use it to better serve their customers. In medicine, data science can help compare different approaches or measure the benefit of a treatment. At Flatiron School, we use data science to evaluate students using our learning management system, to see which students need more help, or which topics they are strong in. People are writing books about the impact data is having on our society, and using data is becoming ubiquitous, with companies, government programs, and sociologists.
For students who are thinking about learning data science, what meetups or resources do you recommend?
Flatiron School holds regular meetups on data science to answer people’s questions. Check out our Meetup page and come visit Flatiron School. There is also a pretty cool Python project night in NYC where people present their Python projects, which often have a data component to them. It’s a great way to see what’s going on in data science. My other suggestion is to take a look at our curriculum – the Data Science Prep program is free.
What is your advice for students embarking on a data science bootcamp? Any tips for getting the most out of it, especially if they are trying to change their careers?
If you’re learning any subject, my best advice is to be curious about it and find what you love about it. These are very rich topics – people have been studying probability and statistics for hundreds of years, so there is a lot to dive into and get excited about. What has been critical for me is finding the coolest parts of a topic, and that has made me a better programmer and teacher. One more thing: don’t worry if you’re the best at something today, but not tomorrow – it actually doesn’t matter too much. In the long run you’ll be as good as you want to be.