Developer bootcamps: a look from the inside

Based on readtime this post should take 10.5 minutes to read.

This look inside is written for someone like me, 6 months ago. I’ll talk about what the program was about, what the day to day was like and what I thought after completing the program.

Prior to the bootcamp, I spent four years at an adtech startup, two of which as a product manager.  Experience in the tech industry is not required to succeed in a bootcamp.  Most of my bootcamp classmates came from other industries.

BACKGROUND ON THE COURSE

  • I attended App Academy’s New York City program.   App Academy also has classes in San Francisco.
  • The program teaches students Ruby and Ruby on Rails.  Plus all the front-end content that all other bootcamps will have (JavaScript, HTML, CSS)
  • Classes have about 20-25 students
  • There is a head instructor and a couple teaching assistants

THE CURRICULUM

I’ve been told that as long as you focus on learning the fundamentals of a language, it’s not that important which language you choose as your first.

I agree with this stance as long as the language does not have such a steep learning curve that a newcomer would become dejected and give up.

When you’re learning or doing something new the most important thing is to first get momentum. I think Ruby on Rails is a great start if you want to become a web developer because you can get something up relatively quick, point a domain to it and you can show your friends “look what I made” and for me, that was extremely motivating and kept me in the game.

The course is 9am to 6pm and 12 weeks long, broken down like so:

  • Week 1 and 2 – Ruby
  • Week 3 – SQL and Active Record
  • Week 4 and 5 – Ruby on Rails
  • Week 6 and 7 – JavaScript and CSS
  • Week 8 and 9 – Work on final projects
  • Week 10, 11 and 12 – Hiring bootcamp (resume and github cleanup and interview prep)

GETTING IN TO APP ACADEMY

The App Academy application process is pretty selective, I believe less than 5% of applicants will get in. I do think that if you’ve made an attempt to teach yourself how to code and made some progress, you should have a really good shot. App Academy looks for self-starters because although it’s held in a classroom, the majority of the time spent will be independent or with one other classmate as your partner.

App Academy was my #1 choice because they were the least risky. They have a tuition model where the student only needs to pay $3,000 upfront and nothing additional until the student actually gets a job. Once employed, he/she owes App Academy 18% of their first year base salary payable over 6 months (minus the $3,000 down payment).

DAY TO DAY

Nearly every day involved pair programming. Pair programming is where I would be randomly paired up with another student to code together.  Partners are to discuss the problem and solution together and then one partner would dictate and the other would type for 15 minutes at a time.  At first we tackled small problems then eventually worked our way up to full-day and sometimes multi-day projects.

The purpose behind pair programming is to help students learn by teaching. To teach effectively, I had to solidify my own understanding, and I would get instant feedback on whether I’m teaching  (thus understanding) effectively from my partner. Pair programming also forced me to go at a slower, methodical pace rather than just diving in and coding blindly without thinking about the problem and the possible solutions more thoroughly.  Most students including myself found pair programming challenging for the first week because up until then we were mostly coding and learning in isolation.  We would often take turns implementing our own solution rather than collaborating.  Over time most of us got more comfortable; however there were still some students that had trouble collaborating even towards the end of the course.

On most days we also had 1 to 1.5 hours of Q&A and a lecture, where the instructors would typically demo how to use some new concept we were learning.

WHY DID I APPLY TO A BOOTCAMP IN THE FIRST PLACE?

My 5-year goal was to:

  1. learn enough web development so that I could get and do a good job as a junior web developer
  2. get paid to learn
  3. and then develop web apps of my own to generate income so that I can eventually work for myself

I’ve had numerous false starts when teaching myself to code. There is a ton of free education online but that was my problem. There was just too much and I always had a nagging feeling that I wasn’t spending my time wisely.

So a bootcamp gave me exactly what I needed. A bootcamp provided step-by-step guidance in the form of a curriculum, which gave me the confidence that I wasn’t studying something I didn’t need to. So now all I had to do was show up and do the work.

DID IT MEET MY EXPECTATIONS?

Before the bootcamp, I would have said “I don’t know what I don’t know.” Now I know a good deal more of what I don’t know. I think this is the “basecamp” that all aspiring developers want to get to because from here you can start to chart your own path. I can now get a job and I know enough to start developing some web apps.

In terms of employment, I returned to my previous company, but now as a junior web application developer.  Two weeks after the end of the hiring bootcamp, I know five of my classmates are employed.

App Academy recommends that you plan out about 1 to 2 months of post-course runway for your job search.  Speaking to previous cohorts, I found that most people were be able to find a job within 1 month.

Getting hired isn’t easy, but it is possible.  It is a numbers game.  The current stats are around 40 applications before getting an interview and for every 3 interviews, a job is offered.

COULDN’T I GET TO WHERE I AM WITHOUT THE CLASS?

If you’re self-studying, as long as you have the confidence in the program/curriculum/tutorial you’re using, learning is your #1 priority, and you have the time you can learn on your own. I do think I could have gotten to the basecamp on my own, but it would have taken me much longer than a couple months. And I was willing to put out the funds to get the momentum going in my web development career and also to save time and energy that would have been much more significant if I were to learn on my own.

There are articles coming out now that speak against the efficacy of these bootcamps for getting student jobs. I think with any skill you’re developing, you have to have a plan on how you want to use the skills you reap. Nothing is guaranteed.

WHAT DID I END UP BUILDING?

We were instructed to build a clone of an existing site for our final project (facebook and evernote clones were my class’ favorites to clone). This capstone project would be used as the  example of all the knowledge and skills we learned and it would be presented in our github for potential employers to evaluate. The reason why we’re highly encouraged to create a clone of an existing site is so that a.) we don’t have to spend precious time explaining to employers the functionality of our clone, and b.) we don’t have to worry about UX.

I chose to build an Urban Dictionary clone for companies to create internal-only custom dictionaries of jargon for educating new and existing employees:

Rampup Ready

My twist on the site is the ability to build curriculums. An employee can use the curriculum builder to search for words and definitions, drag and drop those definitions to include in the curriculum and produce a curriculum they can email to an employee. If they are a new employee they can learn all the terms to be ramped up before their first day or if they are an existing employee they can learn definitions they aren’t familiar with.

I want to keep on working on the app and begin testing it with startups to see if my web app is solving a real (and painful) problem. I’m still pretty embarrassed by the web app because it’s not where I want it to be with regards to the features, design/UX, the code isn’t elegant and there are still bugs. But like Reid Hoffman says: If you are not embarrassed by the first version of your product, you’ve launched too late.

If you own or work at a company and think this is something your company is missing, I would love to chat with you. Please email me at felixthea@gmail.com.

HOW TO SURVIVE THE COURSE

App Academy issued one assessment a week to make sure that students are staying apace. They also have a rule where if you fail more than two assessments you will be asked to leave the course. Out of about 25 students, four left (three were kicked out, and one voluntarily left). We were told that four was the most of all the cohorts.

The teaching style is not for everyone as it is very hands on and moves quickly.  I think the key to getting the most out of the course is to try your best to continue doing whatever you were doing before that gave you energy and kept you from burning out.  These are anecdotal but here’s what helped me:

  1. Keeping a rigid schedule and routine. I woke up and went to bed pretty much at the same time during the entire course, including weekends. This really helps combat the tiredness that you will feel from being locked in and learning for 10+ hours a day. If you went to bed at 3am and woke up at 11am on the weekends, your body is going to be in for a shock when it has to wake up at 7am come Monday.
  2. Take care of your body (exercise and diet). The first three weeks I totally dropped my workout regimen because I thought that it would distract me from my study and would waste precious time. However, once I started my regimen back up by working out for about 45 minutes every day 5 days a week, I really saw a marked improvement in my energy levels and that really helps when you’re trying to retain and process a ton of information. I think the 45 minute (+ 30 minute shower, etc.) was worth it. I also really tried to eat light for breakfast and during lunch so that I wouldn’t feel like a zombie after a meal.
  3. Don’t waste time. It’s only 9 weeks long, and only 7 weeks of actual studying. Use your commute and weekends wisely to get in as much reading as possible. I had a 2 hour commute every day which was probably my biggest mistake, but I tried to make the best of it by doing all my required readings during the commute.

WHAT I COULD HAVE IMPROVED

  1. All the projects we worked on had solutions, I should have spent more time reading the solutions. It would have exposed me to new and likely more elegant implementations and would also teach me the art of reading other people’s code.  Now that I am working with a team of developers I realize how important it is to be able to read code that was written by someone else a long time ago.
  2. If you can afford it, live close to the class.
  3. Use the TAs more. There were two TAs and they were both super smart and pretty much had an answer to every question we had. I tended to wait until I was stuck for 15 minutes or more before calling over a TA.


I won't send you spam. Unsubscribe at any time.

15 thoughts on “Developer bootcamps: a look from the inside

    • felixthea says:

      I chose App Academy because of their tuition model: you don’t have to pay them until you get a job and you pay them a percentage of your salary. This made sure that App Academy wasn’t just trying to churn out developers so that they can get paid, but it closely aligned their incentives with mine and the other students. I did look at http://bootcamps.in but found it more helpful just reaching out to previous alumni and reading blog articles on alumni experiences. Which is what I was trying to achieve with this post.

  1. Jin says:

    Hey Felix. I saw your post on the hacker hours meetup. Not sure if you remember me but we emailed back and forth a bit before you started app academy. I’m glad you enjoyed the experience! Keep in touch!

  2. Carol says:

    The curriculum you list in your blog differs from what appears in the App Academy website. Was the curriculum listed on the website always the same and they do not follow it or was there a change in the curriculum (listed in the website) made, after you completed the course?
    Regarding the $3000 fee, I can not find that information on the App Academy website. Is it mentioned on their website? What if you successfully complete the course, but are not hired for a web developer job, would they refund the $3000?

    • felixthea says:

      I’m not sure if the curriculum was changed or not so I can’t speak to that. I think in general they’ll teach the full stack so some databases, the API layer (Ruby on Rails) and then the front-end (JavaScript, HTML, CSS).

      I believe the $3,000 is non-refundable if you can’t get a job. Not 100% sure. However if you were to be dropped from the course due to failed assessments they do give you your money back.

  3. Kohl says:

    What resources did you use to study for the challenges/interviews? How much experience did you have with programming prior to the course? What are the most important things to study before the challenges/interviews?

    • felixthea says:

      I would pick up this book: https://pine.fm/LearnToProgram/ and learn the Ruby syntax and fundamentals. Then use that knowledge to solve http://projecteuler.net problems. App Academy also provides you with lots of prep material before you actually take any of the technical assessments for entry.

      I did the Michael Hartl Rails tutorial a few times and built a couple very simple and buggy CRUD apps before the course.

      Most important things are learning about Strings and Arrays and the methods that are available for those objects. Also Looping in Ruby. I believe App Academy also provides practice tests before the actual test. I can’t be 100% sure though.

  4. James says:

    Felix – great post man. I’m a fellow AA alum and when people send me questions I’m gonna start sending them here. Thanks!!

  5. Jonathan says:

    Hey Felix! I was recently accepted into an upcoming cohort in NY and was wondering if you had any advice for someone seeking to maximize their gain from this program. I’ve seen some disgruntled reviews, so I’m aware that this course alone is not some magic wand designed to solve all of one’s employment woes. How would you recommend learning about and getting active in the local developer scene while learning at app academy?

Leave a Reply

Your email address will not be published. Required fields are marked *