Now that I've been accepted to Fullstack Academy's software engineering immersive program, I figured I'd share how I prepared to pass the admissions test.
Please note that not all dev bootcamps have a coding challenge in their admissions process. Some programs are designed for people starting at square one with zero prior knowledge. However, I would like to suggest to you that you're wasting your time and money going to a bootcamp that starts you at square one. There are tons of free online resources that you can use to learn everything they'd teach in the first month. It makes no sense to pay tons of money to be taught the most basic aspects of programming and a programming language when all of that information is low hanging fruit freely or cheaply avaliable to you all over the internet. You should only pay the big bucks in order to get instruction and guidance on the more intermediate and advanced topics that you'd otherwise struggle to piece together on your own. There's only so much you can accomplish a three-month span. Why waste that time learning things you could learn on your own? Teach yourself the basics and go to a school that will take you from 60 to 100+mph rather than going somewhere that will only be able to take you from 0-60.
If you're convinced by this advice, then what I'm offering here is basically one way to prepare to get into a non-beginner bootcamp.
So here's what I did step by step, plus a little commentary:
Week 1: Codecademy
The good part about this course and Codecademy in general is that it is designed to be approachable and accessible to absolute beginners with no prior knowledge. All of the exercises were pretty straight-forward and not too difficult. They don't want you to be overwhelmed by complexity or to get stuck and feel discouraged about your capability to learn programming.
The bad part about this course (and from what I've seen from other Codecademy courses) is that there is sometime too much hand-holding and not enough detail explaining concepts for you to really feel like you know what's going on or understand why the thing you wrote worked. I remember several instances where I managed to write code that passed the specifications allowing me to progress to the next problem, but I had no idea why what I wrote was correct. Usually it was because the answer was basically embedded in the instructions or in the examples, so I could figure out what I was supposed to write pretty easily, but I didn't know why that was right.
The value of this course is the non-threatening exposure you get to basic sytax, programming vocabulary, and concepts. However, it was so non-threatening that I found it's educational value to be pretty minimal. Nevertheless, this is where I started and certainly didn't hurt me to startd at such a basic level. If you don't know the difference between
My critiques of this course are pretty negligible. I remember there being a couple places where quality control definitely had room for improvement, e.g. the occasional ambiguity in the lesson or problem wording that made it more difficult to solve the problem. Other than that, the only other thing I would tell you is that while the instructor in the lesson videos may not be all that smooth in front of a camera (I doubt I'd be much better), the content of his lessons are gold. Very well done.
Weeks 3-4: Hack Reactor Prep
The third module introduces you to concepts of test-driven development, writing good code, and provides more challenging exercises that reflect the kinds of questions you might face during the admissions interviews.
The fourth module is just a handful of more challenging problems to prepare you for doing similar problems during the admissions interview.
I really highly recommend doing this course (or Fullstack's) prior to applying to whatever bootcamp you're looking to get into. If you can get through it, you can be pretty certain that you have what it takes to succeed in an accelerated learning experience like Hack Reactor or Fullstack Academy.
One Month Is All It Takes
That's pretty much everything I did to prepare. After finishing Hack Reactor's prep course, I applied to Fullstack and managed to pass both of their coding assessments (they have two, in case you didn't know). I just spent all day, every day reading and doing coding exercises for about a month straight. I think doing it in such a consentrated way helped me advance more quickly in my understanding. I imagine that if I had tried to pace it more slowly, I'd end up wasting a lot of time having to review and refresh myself on things I had already covered. Because I never really took a break, I was able to continually and quickly build on what I had just learned the previous day. But I recognize that a lot of people probably can't afford to do that. If that's the case for you, just know up front that you may find the process to take a bit longer than you expect because you'll have to keep reviewing things.
Like I said, this is just how I managed to prepare to get into a good programming school. There are tons of resources out there, many of which may very well be better than the resources I used. The point is to start somewhere and go at it hard until you feel confident that you understand what you're doing and you're sure that you like doing it.
If you've found other resources helpful as you've prepared to get into a intensive programming school, share them in the commments to point others in the right direction!