From Bootcamp to Dropbox: Part 2 – Success in the Program
Before reading Part 2, make sure you’ve read Part 1!
The bootcamp experience is without a doubt one of the best experiences I’ve ever had in terms of education. Nothing else has given me more excitement about my future career and, just future in general. A lot of this really has to do with the content that I was learning, as well as the applications and side effects. While I do love development, it’s the side effects that really has me excited about becoming a developer. The freedom I have as a developer is something I truly look forward to, the freedom to dictate my career path, the freedom to work on potentially lucrative projects that can have significant impacts in various industries, and the freedom of time and place through freelancing and remote work.
The one absolute advice I give when people ask me about my experience with App Academy, is to completely immerse yourself into the experience and find room with your cohort mates. Despite living within a reasonable commute of App Academy (approx. 45min – 1hour one way), I decided to take on the financial burden of moving into San Francisco with 5-6 others from my cohort. I cannot tell you enough how amazing it was to commute to and from App Academy with my roommates, and to continue keep the mental drive to keep studying and stay immersed in the day’s topics at home where my roommates were of the same mindset. Being amongst some of the brightest minds in my cohort for 16+ hours a day really made the difference between going home and studying with the same vigor as being at App Academy, versus heading home and winding down for the day on my own.
Pre-Curriculum
Time to go into how I prepped with the pre-curriculum material. App Academy provides you a solid set of prep work materials before starting App Academy. The material really allows you to get up to speed and normalizes the starting point that everyone comes into day 1 at a/A. The prep work, while estimated for 4 weeks, can be done a lot sooner, but is paced for people who are still working full-time jobs.
I would say if you have the time, really work on getting through the prep work at least three times through. Each time, certain concepts that were elusive prior will become clearer. I did this and found that I had several ah-ha moments each time I went through.
To supplement, I would continue to work on CodeWars problems until I was around Rank 4 Kyu. I also took introductory courses in Ruby on Rails(CodeSchool’s Rails for Zombies) and SQL(SQLBolt and SQLZoo), topics that weren’t covered in the prep work, and supplemental Javascript courses (Codecademy’s Javascript track was a part of the prep work, but I supplemented with CodeSchool’s Javascript courses, completing Road Trips 1 through 3).
All the above really helped me with hitting the ground running from Day 1. Although that really only lasted until the end of the first week, I think it was really important to my mentality by starting off as strong as I did.
Curriculum
The App Academy curriculum, from a high-level overview, is broken up into three parts: backend, frontend and career.
Backend and frontend parts make up the first 9 weeks of the curriculum.
For backend technologies, you’re taught additional fundamental Ruby topics, of which include object-oriented programming and design, test-driven development and, basic algorithms and data structures. You’ll also cover SQL, a database language, and Active Record, an implementation of object-relational mapping (ORM). And you’ll finish off this 4.5 week period with Rails, covering topics such as, basic querying, joins and associations, MVC architecture, REST APIs, etc.
For frontend technologies, you’re re-introduced to Javascript, remember, there’s a Javascript introduction in the prep work. In the first week of the Javascript material, you cover common, but key topics, such as prototypical inheritance and document-object model(DOM) traversal and manipulation. You also cover jQuery, an extremely common Javascript library that makes it infinitely easier to manipulate the DOM. Following this is diving into and hammering down the React and Redux architecture, and finishing things off by bringing everything together in creating a full-stack web application by yourself, following the typical industry workflow with a TA assigned as your Project Manager.
Once your full-stack project is complete, you begin your job search curriculum. To start off the job search curriculum, you spend your first week covering really common job search materials and strategies. If you’ve never had to apply for a job before, this is definitely new material. If this isn’t your first time looking for a job, without having one handed to you on a silver platter, this material is pretty self-explanatory and common sense, but riddled with new tidbits of information you might’ve not heard of yet, so pay attention anyways! You go over cover letter and resume writing, diving deeper by learning how to play the game of getting through applicant tracking systems(ATS). You get into networking and meet-ups. Topics include how to appropriately approach and connect with people on LinkedIn or in-person (pay attention to this part too because I’ve had some pretty audacious LinkedIn messages and request that I promptly ignored), building a portfolio and how to track what’s keeping recruiter’s engaged.
After that initial week covering all the general career basics, you spend the next 4-5 weeks (App Academy extended their career period to properly accommodate and effectively cover all basic, intermediate and advanced data structures and algorithms. This is just one of many indicators that a/A is really invested in your success).
Now that you know what the curriculum entails, some advice modeling how I studied that will get you through the curriculum and program successfully. I found that the quizzes were somewhat helpful, these quizzes covered the night’s homework and readings for the next day. But what I found the most helpful was superficially skimming the homework, readings and videos, and having a very superficial knowledge of what you’ll be covering the next day. Meaning if I didn’t understand something, I didn’t get too hung up on it. By this point, I’m usually 12-13 hours into the day and my mind is pretty fatigued, so a superficial idea of what I’ll be covering is sufficient. Majority, if not all, or my learnings were done during pair programming the next day. It’s important that you really seek a deep understanding during pair programming, as opposed to trying to push to finish the pair programming project, but having a mediocre understanding of the topic. Pair programming is the most optimal time to learn because you have your pairing partner to help you, and the opportunity to teach your partner, if you understand the topic and your partner doesn’t, is an opportunity to understand the topic even more deeply. Another plus is having TA’s on hand to explain topics to you and help you if you’re both stuck. Remember the advice above, it’s practically my golden rule to making it through the curriculum successfully.
Failing an Assessment
Try not to fail an assessment. While I understand the necessity of it, I feel that their system is flawed(they’re working on various solutions though!) While I was at a/A, their system was: after you fail your second assessment, you’re given the opportunity to retake that assessment an hour or two later. If you fail, you fail out and are dismissed from the program. If you pass the retake, you get to stay, but the next subsequent fail is and automatic dismissal.
So try not to fail. That’s easier said than done, but honestly, if you try your best and study hard, you’ll pass that assessment. App Academy provides practice assessments that really help you get a good idea of what to expect for each assessment, and as long as you put forth the effort into studying with these practice assessments, you’ll do fine.
Now what happens if you do fail an assessment, such as the scenario that I was in?
It completely changes the game and it changes how you learn. What do I mean by this? Well, before a failed assessment, I was studying to learn, seeking a deeper understanding of every single topic possible. After my first and only failed assessment, I began to stress over the situation. My constant worry was failing the next assessment, and potentially failing the retake. Getting dismissed was honestly not an option for me (As I found, that fail was a fluke, I knew my stuff, just got tripped up over a bug. I aced every assessment thereafter). Instead of seeking a deeper understanding of the topic, I learned only to pass the assessments, which hindered my deep understanding.
Why didn’t I just do both at the same time? Well, learning for a deeper understanding is more time consuming than one would expect, oftentimes, I found myself behind until the weekend, where I then caught up and was ready for the new week. When my studying strategy switched, I began to study to pass the assessment, which involved a lot more repetition of various problems, and doing more practice assessments than looking into the next day’s projects and materials. I spent more time practicing and repeating various problems in different ways, more than I spent asking “Why?”.
App Academy is always looking to improve their program, assessment system included. Two cohorts after mine, they implemented a different system, and when it didn’t work, they changed it up again. My situation might not be synonymous to yours, but the change/shift in mindset could be, and I just wanted to prepare you for the possibility.
Work on staying flexible in your way of thinking, don’t restrict your thought process to only thinking that there’s one way to solve a problem, that’s what introduced my bug in the third assessment and threw me into a downward spiral as time dwindled away to zero.
That’s pretty much it for this post! Hopefully next one comes out before the new year. I have a lot of updates for y’all when the new year starts, including how my blog will be evolving from this point on.
Below, you’ll find my links to additional resources that aided me in my journey through the App Academy curriculum. Again, these links are my affiliate links. I’d appreciate your support!
Apply to App Academy! https://www.appacademy.io/referral_redirect?hash=ff2f84fde076ad18
Beginning Ruby by Peter Cooper: http://amzn.to/2k292Ah
Clean Code by Prentice Hall: http://amzn.to/2hUz7gf
SQLBolt: https://sqlbolt.com/
SQLZoo: https://sqlzoo.net/
CodeSchool: https://www.codeschool.com/ (Rails and Javascript Supplement)
CodeWars: https://www.codewars.com/ (Up until 5 or 4 Kyu)