How I prepared for my first assessment interview (109) at Launch School

I’m finally writing my first blog post, as Launch School recommends to do at the end of course 101. (It ended up being pretty long so feel free to skip to the TLDR at the bottom.)

I also am currently participating in a challenge some of the students at Launch School are doing: 500 hours of coding within 60 days. We are supposed to write a blog post every 100 hours. I’ve done 204 hours now since starting the challenge three weeks ago, but I wanted to wait until after my 109 interview to write a blog post.

I took my 109 interview three days ago. I was very nervous going into it, but I passed and it went much better than I expected. I think it went so well because of all the extensive preparation I did. I did not keep a detailed record of how I spent my time each day, besides just running a timer app whenever I was studying, but I am going to try to list all the things I did to prepare for the interview in this blog post.

First here’s a little background about my experience with Launch School. I first started in April 2016, last year, with no prior programming experience. I spent three months finishing the prep course and course 101 from April to June, studying about 40 hours a week. Then I realized I would need more savings to continue doing Launch School full time, so I decided to start a job to save more money. I didn’t do any coding at all for 3–4 months, then I started again sporadically, until the beginning of January 2017, when I started studying full time again. I felt like I had forgotten a great deal, so I decided to prepare as much as possible in order to be ready for the 109 assessment.

The following is a list of everything I’ve done to prepare: (some of it I did last year, and some of it since I started studying full time again)

  • First, I followed everything Haseeb Qureshi wrote about on his article on Cracking the Coding Bootcamp, except for doing Ruby Monk, since the site was down at the time:
  • — I did all the App Academy practice problems.
  • — I did 100+ of the easy and medium Ruby exercises on Coderbyte.
  • — I did 400+ kata (exercises) on Codewars, each time coming up with my own solution, then looking at the highest rated solution, and trying to copy it without looking at it again, which helped me immensely to get comfortable using and remembering new methods and syntax.
  • I read Mastery by George Leonard.
  • I took the Learning how to Learn course on Coursera.
  • I re-read all of my notes that I took during Launch School covering the prep course to the end of course 101, as well as all the videos.
  • I read some articles (first, second) about using Anki to make programming flash cards, and re-read all the Launch School material from the prep course to 109, making flash cards for things I didn’t remember well.
  • — I reviewed my flash cards every day for the last month, adding new ones when I came upon relevant information.
  • I worked through the Regex book at Launch School.
  • I redid all the exercises in the Launch School courses, as well as working through the Ruby Basics exercises two times, and the Ruby 101–109 exercises three times, trying to follow this approach.
  • — The first and last times I went through them, I spent a lot of time trying to solve the problem in as many ways as I could think of, read other students’ solutions, and attempted the further exploration part.
  • — The second time, I just tried to come up with a working solution as as fast as I could to try to improve my speed.
  • I re-watched all the Launch School Videos, such as Watch Others Code, working through the problems on my own at the same time.
  • I watched the Launch School Problem Solving Approach videos twice, taking notes, and practiced applying this approach when writing code.
  • — I also watched two (first, second) of the JavaScript videos where the more advanced students do live coding, to get a better idea of how to apply the problem solving approach.
  • I read Launch School’s forum and Slack chatroom every day.
  • I read all the relevant Launch School Weekly Summary archives and blog posts.
  • I attended two 109 study sessions led by an advanced student, Elizabeth Tackett.
  • I attended a Launch School General Hangout with Jay Shenk and Abhi Reddy, who helped me practice doing live coding.
  • I did a practice interview with an advanced student who was kind enough to help me out, Darren Burgess.
  • During the last 2–3 weeks, I spent most of my time doing live coding with other students in 109. We each would pick problems to give each other, and then work through them while explaining our code out loud, trying to replicate the interview environment.

In retrospect, I think I probably went a little overboard in how much I prepared, but the instructors at Launch School always say you can never spend too much time on fundamentals, so I think it was time well spent.

TLDR: The most important things that helped me prepare for the 109 interview: live coding with other students, doing lots of exercises on Launch School and Codewars, and using flash cards.

To everyone who did live coding with me or helped me in other ways: Thank you!

The 500 hour challenge also really improved my productivity and motivation. I went from doing about 40 hours a week to 50–60+ hours a week. So thank you Antoine Leclercq for starting the challenge, as well as everyone participating!

I would highly recommend Launch School to anyone thinking about learning to program, as although it may take a lot of time, its extensive curriculum, welcoming community, and mastery based approach to learning really cannot be beat.