My Experience as a Full-Time Web Development Bootcamp Student at Thinkful

March 1st, 2017

Since my graduation in October, I’ve wanted to write about my time at Thinkful. Honestly, it’s been hard to know where to start, and it was important to me that I dedicated enough time to adequately capture my experience. In short, Thinkful greatly exceeded my expectations in every respect and I have nothing but positive things to say about their program and their staff.

Prior to Thinkful, I had no more than a few weeks of self-taught programming experience. For many years leading up to the program, I planned to learn to code at some point, if the opportunity presented itself. I had enjoyed my cursory exposure to programming and thought it might make for a cool hobby someday, but I never imagined I would be able to make a career out of it. Early last year, I came across several ads from various bootcamps and was immediately intrigued. The prospect of completely changing my career path in less than a year sounded amazing, but I definitely had reservations about the validity of their promises and claims. I researched the available programs extensively, but was not impressed by the first few I inquired about, which at best were unmemorable. In contrast, Thinkful had a unique quality from the start.

On the initial, informational call, I instantly clicked with the program manager, whose academic backgrounds and interests paralleled my own. He was straightforward and thorough, and I appreciated that he provided me with a clear representation of not only what I could expect from the program, but also what it would require from me. Unlike my calls with some of the competitor bootcamps, our conversation in no way felt like a sales pitch. He was completely upfront about my possible options and the associated costs. It was apparent that his intentions were to help me decide whether the rigorous program would be the right fit for me, and to ensure that I fully understood the degree of commitment required for a successful outcome. I excitedly put in an application the same day. Within a couple weeks, I was notified of my acceptance, and the course started a few days later.

One of my first noteworthy impressions of the program was the high quality of the other students in my cohort. I was in the second session, with seven others, ranging in age, academic backgrounds, and work histories. Initially, the only thing we all seemed to have in common was our programming background, or lack thereof. Nonetheless, we became acquainted straightaway, and I promptly had the realization that each one of us was hand-picked for our cohort. It was evident that careful thought went into building a balanced group of people who would mesh well and cultivate each other’s growth on a daily basis. It never felt like we were in competition with one another, or like there was a weak-link impeding the advancement of the rest of the class. We all were equally motivated to learn and willing to put in the required work and effort. I found myself helping one of my classmates understand a new concept just as often as they would teach me the finer points of something else. The high standard for acceptance into the program is what makes its peer-programming driven curriculum especially effective. Additionally, the supplemental reading materials are exceptional. The texts are extremely concise considering how content-rich they are. I never felt like I was buried in reading, but always had thorough explanations for reference when I needed them.

Even still, the first several weeks were challenging, as the fast-paced course takes off at full speed from day one. There were moments where I doubted my ability to stay on track, but the 1-on-1 attention from the instructors/TAs/mentors made such a difference early on to prevent me from falling behind. One thing I love about Thinkful’s faculty is that they take such a personal interest in every student. It is not my nature to ask for assistance until a situation becomes dire, but I would regularly get the help I needed without asking for it. All of the instructors are expert programmers and could quickly zero-in on the holes in my comprehension from briefly scanning a few lines of my code. Accordingly, they would often provide answers to questions that I didn't even realize I had. Thinkful’s support team is also really wonderful. Whenever I had an administrative question or some other request, I would receive a swift response from the right person, who would be more than happy to help me. On a few occasions, I even received a compliment on one of my projects or some other positive feedback from a support team member, alongside their response to my request. To me, this perfectly illustrates how every person at Thinkful is involved in the progress of the students and dedicated to their success, regardless of whether or not they are directly involved in the learning process.

Before I knew it, I was halfway through the course and was independently building full-stack web apps as side projects. This was a huge turning point for me, and I couldn't believe how much I had learned in two short months. Around this time, I experienced a newfound confidence in my coding ability. I witnessed not only my competency begin to increase rapidly, but also my love for programming. From that point on, I was literally coding around the clock. I would work all day on my projects for the course, and then would continue coding on my side projects in the evenings. Beyond the formidable skill-set I learned throughout the program, I also attribute the love I developed for programming to my instructors and mentors, who displayed their own genuine passion for coding on a daily basis.

The second half of the course flew by even more quickly than the first. I remember feeling excitement on the last day, but it was coupled with an anxious uncertainty about what would happen next. While I was very confident in my programming ability by that point, I was concerned about no longer having the support system that I had relied on so heavily for the past four months. As a student, I felt this 'safety net' of people behind me. As I exited the program, I was unsure whether my growth and success would continue as an alumnus without that safeguard to fall back on. Luckily, I was never faced with that scenario -- the instructors and mentors I worked with throughout the course were just replaced by equally impressive career-prep coaches, but the unfailing support and guidance I received remained unchanged. At no point during the course or in the months that followed did I ever feel like I was on my own.

I strongly dislike resumes/applications/interviews/marketing myself/etc., but Thinkful's career-prep personnel made these dreaded aspects of the job search as easy and painless as possible. They assisted me in every step of the process, helping me focus on small manageable tasks so that I never felt overwhelmed. Also, all of my former instructors and mentors continued to make themselves available to me. They were always happy to assist me with debugging or provide me with feedback, despite the fact that I was no longer a current student. Furthermore, several of them wrote recommendations for my applications and served as references throughout the interview process. At no point in my job search did I ever struggle to find help from someone when I needed it.

Another aspect of my job search that I appreciated, was that I never felt pressure to apply to a job that didn’t fit what I was looking for, or accept an offer that I wasn’t thrilled about. In the same way, I always considered the advice I received from my career advisors to be in my best interest. I never felt like their guidance was influenced by some other agenda -- like getting me hired as quickly as possible and out of their hands. When I first learned about Thinkful’s guarantee (essentially that you will get hired within six months of graduation, in a full-time role as a programmer, or your money back), aside from the more obvious implications of this promise being a testament to the effectiveness of the course, it reassured me that I would be provided with adequate career support, reasoning was that they would be sufficiently motivated to protect my tuition funds in light of the guarantee. In reality, I had it backwards. They are able to provide that guarantee because they are the best at what they do, and have built a highly skilled team that genuinely cares about their students. With that combination, there is no question that their students will be hired, as long as the appropriate commitment exists on the part of the student.

In my past experiences with ‘guidance’ counselors or some equivalent, I can confidently say that this is not the norm. Before Thinkful, I was familiar with a dynamic in which my best interests were a much lower priority, and were eclipsed by many other considerations unrelated to my success. For example, my pre-med advisor in college was far more concerned about maintaining the school’s statistics surrounding acceptance and matriculation rates, to the extent that she would regularly discourage me from applying to med schools altogether, and instead direct my efforts toward a dentistry program or a career as a physician's assistant. She would prefer for me to aim small and guarantee her own success, than to reach toward something that was in line with my goals, but had a more uncertain outcome. As it turned out, I never did apply to medical school. Looking back, I feel like I should thank her -- I cannot imagine a situation in which I would receive the same gratification from a medical profession that I experience in my career as a programmer.

A few weeks ago, I took on a full-time role as the sole software engineer for a small medical-device startup, where I'm building the corresponding mobile app. I am still blown away by the notion that I am being paid to write software full-time, not even nine months after that initial call with the program manager at Thinkful. Aside from the broad-base of programming knowledge I now posses, one of the most valuable skills Thinkful offers its students is how to think like a programmer. Additionally, they teach you how to learn, and how to do so extremely efficiently. Throughout my job search, whenever I saw a posting that mentioned experience with a technology I hadn’t used or some other requirement I didn’t quite meet -- I was never concerned that I might be unqualified for the job, because I was confident that I could quickly pick up any new skill. Instead, I was focused on how I could convey my learning capacity and adaptable nature to the hiring manager.

Thinkful’s program is structured in a way that, as a student, you are positioned to absorb increasingly larger amounts of new information, over shorter periods of time. Effectively, I came out of the course with a very high potential for learning -- so much so, that my current employer was confident in hiring me to build their mobile app, despite my very limited prior experience with mobile app development. In a few short weeks, the app is well underway and I have another skill to add to my growing repertoire. Even now, Thinkful continues to serve as a valuable resource for me. I still refer back to the program’s curriculum frequently, and attend the Q&A sessions for supplemental code help a few times a week. Additionally, I continue to keep in touch with all of my former classmates and instructors, many of whom I chat with several times a week and consider to be close friends, despite having still never met them in person :) .

Just to be clear, I do not work for Thinkful, and was not paid to write this review. I wanted to spread the word about what a genuinely good company they have, and what a solid programming bootcamp they offer. I feel like I owe them so much, as this experience has changed my life. This is my first salaried job and I'm earning more than I ever have previously. For the first time, I can honestly say that I'm fulfilled by the work I'm doing -- it is a very rewarding feeling to build a website or an app. Also, I love that I will always be challenged and continue to learn in this career. I don’t foresee ever feeling the mundane repetition in my current position that I've experienced in previous roles. In fact, my new job doesn't even feel like work at all -- I get to write code all day, my lunches are catered, I take ping-pong breaks whenever I need to move around for a bit, and my skateboard is my primary means of transportation inside the 'office'. In all seriousness, this is the first time that I have ever truly experienced firsthand the old adage, “Do what you love and you’ll never work a day in your life.” I wouldn't be able to say that without the opportunity Thinkful provided to me -- the opportunity to completely transform my career in a few short months.

Prospective Student FAQs

Are you considering enrolling in a Thinkful bootcamp? Here are
my answers to a few of the questions I had as a prospective student:

How do I know if it’s the right fit for me?

Talk to a few programmers before you commit to the bootcamp. While the success stories of myself and others would likely be appealing to anyone in search of a vocation, it wouldn’t make sense for someone to go through the course if they fundamentally were not a good fit for this line of work. Although you can’t really know what programming is like until you learn how to code, make sure that the nature of the career itself appeals to you. Don’t worry about things like your typing being slow, your avoidance of keystroke shortcuts, or your aversion to learning new software platforms. You’re not expected to know anything coming into the course and your generalized computer competency will quickly advance throughout the program alongside your programming skills. Instead, ask yourself questions like, “Do I find new technology interesting?”, “Will I be happy with a primarily sedentary job?”, “Do I thrive in situations in which I’m mostly working independently?”, “Do I enjoy problem solving?”, “Am I comfortable learning more technical and abstract concepts?”, and most importantly, “I am excited to learn new and challenging skills?”.

What is the real time commitment?

Make sure that you are willing and able to commit not only the required effort, but also the necessary time. An enthusiasm for coding and a will to work hard will only get you so far if you simply don’t have enough time to give to the program. Success in the bootcamp requires your full focus and dedication, and what you put into it is what you will get out of it. A few of my classmates completed the course successfully while working part-time, but I would really be hesitant to recommend the course to someone with responsibilities beyond that. Even then, you have to think of every hour allocated to something outside of the program as being one less hour of growth and preparation toward your career and desired goal.

I was fortunate to have no other regular responsibilities throughout the program. I honestly spent somewhere on the order of 90% of my waking hours on the advancement of my programming skills. I’m not saying that you shouldn’t even bother if you can’t put in as much time as I did, but you will not have the outcome you’re looking for if you are only able to attend the daily sessions and meet the minimum requirements. If you answered yes to all of the questions in the first one but have concerns about the time commitment, try to reduce your other responsibilities in some way to better position yourself for success. In my case, I moved back in with my parents, asked for a forbearance period on my student loans, and took some other temporary measures in order to quit my job and give the program my full attention. If that sort of transition is out of the question for you at the moment, then shelf this idea for the timebeing and work toward creating a better situation for yourself, in which you could make the most of program at a later time. If you don’t forsee any point in the future in which your available time will open up, then consider Thinkful’s part-time bootcamp or other courses.

Is the course worth its cost?

If you still feel like you’d be a good fit for the program after reading the first two, then what are you waiting for? :) Definitely don’t let the cost of the program deter you if it makes sense in all other respects. If I got a glimpse of my life today when I was a prospective student, I would not have hesitated to pay twice the tuition or more. The value of this opportunity is vastly greater than its price. And I can assure you that what you are quoted is what you will pay, and there are no hidden fees or additional costs. The tuition alone includes the four-month course and everything that it entails. Additionally, your access to Thinkful's curriculum, their amazing network of people, and the other, supplemental resources they provide will continue on past graduation. If you are simply concerned about your ability to pay for the tuition, then communicate your situation to someone at Thinkful. In the same way that they personalize the course for each student’s needs, they are willing to work with you to find a payment option that will fit your financial limitations. Last, Thinkful students are given discount to pass on to their friends and family, worth $500 off the price of a bootcamp. If you know someone who’s attended Thinkful, make sure to ask them for this. If not, feel free to use my referral discount, available here.

Tips for Bootcamp Success

Coming Soon!

I grew up around tech -- my dad is an IT security consultant, so my academic interests always gravitated toward math and science. Accordingly, I was pre-med at Pepperdine University; however, despite my interest in medicine as a field of study, as graduation approached I found myself becoming increasingly disinterested in pursuing it as a career. Around this time my interest in tech peaked. I became fascinated with Bitcoin and Blockchain technology, and the first code I ever wrote was for cryptocurrency miners. While I could not yet appreciate these elegant lines of code, it was satisfying to engage in this world a little more fully. I began dreaming about a career as a programmer and concurrently regretting my college major. Since then, I have had several diverse work experiences. I quickly excelled in each of them, which illuminated a few key qualities in myself that facilitated these successes. Foremost, I am an extremely quick learner, with an aptness for teaching a newly acquired skill to others. I am an instinctive problem solver, and ancillary to my logical disposition is a refined creativity, which consistently distinguishes my work.

I made a resolution this year to find my vocation, and within days I saw an ad for App Academy’s prep course. I viewed this as a singular opportunity to get my foot in the door of the tech industry and quickly applied. This course both imparted the fundamentals to me, and substantiated my notion that programming might be a great fit for me as a career. Subsequently, I enrolled in Thinkful’s full-stack web development program. The next four months flew by, and I cannot believe how much I’ve learned. At the start, I was just trying to soak up all of this new information, but then about halfway through everything clicked. My ‘break’ week, following week eight, was spent coding around the clock -- I built three full-stack apps before classes resumed. From that point on, I coded about twelve hours every day and always had a side project. I became increasingly fulfilled by my work and began experiencing firsthand the old adage, “Do what you love and you’ll never work a day in your life.”

My greatest accomplishment was during week thirteen, when I independently built a backgammon game, against my mentor’s advice, who thought it would be out of scope for the five-day project. Not only was this inherently challenging, but I wrote the backend in Python, which I’d never used previously. I vividly remember feeling exceptionally focused and comfortable coding that week. Additionally, my capstone project, “Code Up”, was an extremely rewarding experience. I took the lead on the project since it originated from one of my proposals, serving as the project manager for a team of four. Relative to previous weeks, I coded far less, instead spending most days assisting a teammate with their code. This was a valuable opportunity to exercise my leadership and teaching skills in the context of programming. Also, I recognized that one of my strengths as a programmer is my ability to clearly visualize the big picture of an app from early on, and understand how it will all connect together, even if it’s unclear what the individual pieces will look like just yet. I’m incredibly proud of what we accomplished, as this was far more complex than anything we’d built previously, with extensive features and delicate socket handling.

In sum, despite the relatively short timeline of my coding career, I believe that my academic background in the hard-sciences and my other life experiences have been preparing me for this career for some time -- laying out the groundwork on which I was able to quickly develop a formidable generalist programming ability. I absolutely love coding, and it has truly become the primary focus of my time and energy. I am ecstatic about starting a career as a software engineer and continuing to improve my programming skills.


'Your programming questions answered in real-time by knowledgeable peers in a 1-on-1 chat room setting, seamlessly integrated with a collaborative code editor.'

I conceptualized this project and led a team of four as the Project Manager to build this site in three weeks.

Frontend: React.js (+ Redux, Router), Firepad.io, ES6, LESS

Backend: Node.js, Express.js, Socket.io, PostgreSQL, Knex.js

Partners: Alex Bang, Sean Jun, & Joe Seago


'Outwit your opponent in one of the world's oldest dice games.'

I built the initial version of this project in a week, by myself, with Python 3 & Flask (this was the first time I had ever used Python). I then spent a few more days re-writing the backend in Node.js and implementing Socket.io.

Frontend: React.js (+ Redux, Router), ES6, LESS

Backend: Node.js, Express.js, Socket.io, MongoDB, Mongoose

Original version:


A 'spaced-repetition' app, parodying the popular language-learning software, Rosetta Stone®, and featuring the fictional language, 'Dothraki', from the hit HBO series, Game of Thrones.

I built this project with a partner in a week, using paired-programming. I went back alone a few weeks later to re-write the backend, making some crucial bug-fixes and implementing Socket.io.

Frontend: React.js (+ Redux, Router), LESS

Backend: Node.js, Express.js, Socket.io, MongoDB, Mongoose

Partner: Alex Bang


This was a side project I made for my girlfriend as an advertisement for her property listing.

Building this proved to be far more challenging than I anticipated, as I had to forget everything I knew about styling HTML content to create an elegant and responsive design without media queries, using only inline-styles.

Built with: HTML5 & CSS3


This was a side project I did for my dad's startup, The OpenICSTM Project.

Building this project enhanced my UI/UX design competency and my understanding of frontend routing. It also provided me with the opportunity to use some new technologies, such as 'react-router-scroll'.

Built with: React (+ Router, Scroll) & LESS


'Use our real-time search to quickly navigate through U.S. casinos to find their contact information and the details of their daily poker tournament schedules'

This was the first full-stack app I built independently, as a side project, during the 'break week' of the Thinkful course. I gained a much clearer understanding of APIs and the way the frontend and backend interact. The casinos in the database are comprehensive and all of their contact information has been added; however, only about 10% of the tournaments have been input at this point.

Frontend: React.js (+ Redux, Thunk, Router)

Backend: Node.js, Express.js, PostgreSQL, Knex.js, Google Places API


'Join your friends in the classic strategy game, Connect Four®.'

This project was started by one of my classmates. He wrote the majority of the code and then I took over for a couple days to rewrite part of the backend and implement Socket.io. This was the first time I'd used Socket.io, and it was a great learning experience, giving me a much better understanding of how the server interacts with clients and how information can be selectively sent back to certain connections.

Frontend: React.js (+ Redux, Router), ES6, LESS

Backend: Node.js, Express.js, Socket.io, MongoDB, Mongoose

Partner: Robby Kim


'Try your hand at this addictive card game, also known as "Big Two". This is a "shedding game" with the object of getting rid of all of your cards first. It uses poker hand rankings to determine hand strength, and deuces play high.'

I started this project and wrote the majority of the code in 3 days, and then switched off with one of my classmates, who finished up the gameplay logic and tied up some loose ends.

Frontend: React.js (+ Redux, Thunk), LESS

Backend: Node.js, Express.js, Deck of Cards API

Partner: Robby Kim


'Play "The Ultimate Tile Destroyer" -- break randomly-generated tiles and compete for the high-score.'

This was the first full-stack app I built, working in a group of three. I wrote the backend, set up the database, and made the connection of the backend and frontend.

Frontend: React.js (+ Redux, Thunk), LESS

Backend: Node.js, Express.js, PostgreSQL, Knex.js

Partners: Alex Bang & Eric Snell


'Guess the random number between one and one-hundred, using the provided feedback to gauge your next guess.'

While the logic behind this game is fairly simple, it was a personal achievement because it was the first project that I built with React. It was also the first one I really made my own, as I built the thermometer, which graphically displays how close the user is to the correct answer.

Built with: React.js (+ Redux)

Partner: Sierra Gregg