Skip to content

Bootcamp: Worth it or not?

Mikiko Bazeley edited this page Sep 10, 2019 · 3 revisions

What made you do the program in the first place? Did you have any technical skills previously?

So the answer to this question is actually a bit complex.

Prior to enrolling in Springboard in August 2018 I had gotten a job as a Data Scientist (in fact I'd been working there for a full year before transitioning to a role as a senior analyst at Walkme, a much smaller start-up). My role mainly revolved around fulfilling the traditional business analyst responsibilities (creating reports & dashboards in Domo [QBR's, operations, finance, etc), managing a salesforce instance, & writing R scripts to automate data transfers]) and I was a "data scientist on an island".

However that company is particularly convoluted when it comes to organizational structure, so for the most part I wasn't really able to get access to either the main data warehouses, additional assets or resources, or even the data science practice itself. At that point I had a few years doing analytics-like tasks and was also self teaching through various resources (online courses, tutorials, even in person classes at the local community college)) focusing on R scripting, data visualization, and analysis.

I tried transferring into an internal data science team and had a series of informal coffee talks with the senior data scientists where I basically bombed all the significant parts of the interview (especially around machine learning, statistical analysis & theory, applied advanced mathematics, & cs engineering). One senior data scientist was particularly kind to me though and encouraged me to find a company where I could grow my skills and experiences especially in the areas I just mentioned (i.e. where the data practice wasn't a wreck) and to find mentorship.

In putting together my criteria for a data science bootcamp I needed to consider the following:

  • Length of program = I was a pretty distracted & impatient undergrad & not much has changed since then. The program definitively needed to be less than 6 months long because I couldn't really guarantee motivation beyond that, even with additional returns on time.
  • Academic (Master's) vs Bootcamp = As mentioned above, I was an incredibly distracted student and this reflected in my undergrad gpa. Also I studied monkeys & non-human primates as part of an anthropology degree. After calling around the all the different grad programs, all said "no". So bootcamp it was.
  • Full-time or Part-Time = I'm a single earner with a relatively poor family (i.e. it was going to be self-funded) & am incredibly weary of loans. Aside from the cost of the program, full-time also meant losing out on 6 months plus of valuable working experience + income (and I live in the bay area).
  • Cost & Payment Plan = Cost needed to be less than 0k. Springboard came in at .5K. And with a monthly plan that was incredibly affordable, especially on a cash basis.
  • In-person or Remote = I'm a really great remote student. Although I really enjoy in-person classes (and took some GIS labs) traffic & commuting in SF is nightmarish. Remote also meant I could flexibly structure my study without much company influence.
  • Structure of bootcamp = Essentially I identified 3 key components as being important to me: mentorship, project development, career assistance. A program needed to meet these (but not much else).
  • Informally I also needed to consider the reviews of the program, the overall ROI, and lifetime access to materials. After reading some reviews online and assessing my finances, Springboard seemed to match up. Less than .5K spread out over 6 months, strong mentorship component, decent course material (although none of it is created by Springboard but curated), and I would have two extra "data-science-y" projects that I could go to potential recruiters. As part of the course curriculum Springboard partners with DataCamp and you have access to Springboard material (lifetime access) and DataCamp for 6 months after program ends.

Most of that content has been captured here:

These are the two projects:

To be honest completing the bootcamp was so difficult for me (they actually gave me an extra 2-3 months free so I could turn in the projects as long as I waived the job waiver). I really didn't have any of the technical skills and domain knowledge so I was most definitely starting from scratch. However I think it was a worthwhile investment. The entire program focused on python (which I'd never used -- when I enrolled I had some coursework in Java & working experience in R and had some really really rudimentary experience in using MySQL), I was able to leverage numpy/pandas/sklearn/seaborn (and even some weirdo packages), was able to write "script level" python code, could roughly describe various tasks & concepts in machine learning and not sound like an idiot. Since I did the NLP track (there 3: deep learning, NLP, and general ML) I was also less foggy about NLP.


Do you have any tips on "selling" or talking about the projects I'm assuming you had to do throughout the program? For the ones I did, I've merely written up detailed READMEs on GitHub, but I'm wondering if there is a better way to present them.

Feel free to check out the examples I listed. I think README's are great and for me I treat them like a static web page. You can also use a github site. However I don't really like github sites for projects unless they're really, really mature or more like packages. A big reason is because recruiters are usually only checking to see if you have them & they become a pain to maintain. Even hiring managers and peer data scientists/engineers won't be clicking into them too much (unless it's a really catchy splashy project). With that being said it's possible that people are clicking into the actual links in my resume, seeing the projects, going "nahhhhhh" and then rejecting my application. I doubt there's a way for me to know though (and I haven't been successful in sticking google analytics on github so can't measure).

To some degree I haven't had to do a "hard sell" on the projects and a big reason is because the sales call classification project I linked above was a project I did in the program but on company data for the company. My program mentor ensured that it met all the project requirements, my manager had me sign an NDA & data privacy document, I submitted the code & output to my mentor for grading (but not the underlying data). That was a decision I made intentionally because I wanted to kill two birds with one stone: (1) Having a project from the boot camp that was an ML project, (2) being able to say I did an ML project for my role. Wth the other project that was NLP focused I tend to talk about how it enabled me to understand the fundamental principles & workflows behind common NLP tasks such that I can also apply them to use cases like classifying and triaging support tickets, topic modeling community forum posts to aggregate common customer pain points and accelerate VoC programs...etc etc.


After finishing the program, did you continue working on side projects or did you take any online courses? Which do you think looks better on the resume?

After Springboard I took a month off and then enrolled in a program called Data Science Dream Job. Essentially it's a coaching program that focus on the nitty gritty of job searching and interviewing as a data scientist https://www.datasciencedreamjob.com/. It's not a bootcamp and doesn't have course work or certifications. Rather it's a mentorship & interview focused program where the mentors host office hours, do mock interviews, & will do resume and project reviews. For me personally I felt that I needed some additional coaching help (I stutter when I get really nervous & needed a confidence booster) & like how active the community is. They also have some technical workshop videos and they're still expanding.

I previously mentioned a "weekend startup". So a friend of mine that is a director over at Ericcsson has a friend that is working on a startup, specifically a real estate machine learning startup. As part of an equity deal I work with the CEO and my friend (ds lead) on building out the machine learning parts of the product.

It's an exciting opportunity to focus on some important areas that I needed more experience with: (1) creating production quality code, (2) formulating prediction problems from scratch using challenging & disparate finance & real estate data, (3) model deployment, & (4) statistical analysis & testing. More importantly the kind of experience & skill building that comes from being an individual (& sole contributor) at an early stage start-up is a different experience from being part of a team on a mid or late stage company. I work on this startup on the weekends (and some nights) and then still have my full-time role at my current company where I do some machine learning & data science projects but cycle every month on a deep dive into a specific area of data science.


What were kind of job were you looking for coming out of the program?

I wasn't necessarily looking for a job immediately coming out of the program and to a certain degree I also know I wasn't ready to get the kind of data science job that I wanted. You don't know what you don't know right? Something I discovered when I came out of the program was that while I was quite equipped to have a very detailed conversation about data science (and different parts of data science), I still needed to develop a lot more in my skill set.

So what I did was I created a study plan for myself for the 6-9 months after the program. Every month I would focus on the following topics:

  • Data Cleaning + EDA (Visual Analysis) - It takes me a really long time to data clean & munge
  • Statistics/Probability Theory/Experimentation - Statistics was always a really sore point; and for the most part my business partners & business analytics managers have rarely cared about statistical & experimental rigour - which is a completely different perspective & attitude from traditional data science teams
  • Machine Learning 101 - Revisiting it specifically - I was shocked by the number of interviewers that expected me to describe a specific implementation of an algorithm.......
  • Machine Learning Specialization - I still really don't quite understand deep learning and I really want to get into more geospatial & network analysis (my goal is to work in a transportation/logistics company)
  • Software Engineering/Ops
  • Math

I would use a combination of passive studying (watching videos, listening to podcasts), mid-active studying (reading technical books & taking notes, reading through example projects), active studying (so coding tutorials & challenges like DataCamp), and artifact creation (projects, code, notebooks, blog posts) as well as reworking my previous projects.

I'm about month 2 into the plan and curated the learning materials from various places but mostly Springboard & DSDJ. Like all best laid plans however I've definitely had to be a bit more agile. Initially I had this really complicated learning plan that focused on stats for 2 months, then coding for 2 months etc. But the reality is I would walk into a set of interviews, bomb the stats portion in one, then bomb the stats portion in another. So I spent the first month+ nailing down stats theory, A/B testing etc. Went into another interview and knocked that out of the park. Then bombed the coding portion :( That was feedback that I needed to iterate through the different topics in a much shorter cycle and make sure that I was continuing to plug the holes in my understand and experience. I think it can be particularly difficult for someone like myself that doesn't have a very strong technical background to always know what's important and the reality is that different companies have different needs at different times which will show up in the interview process.

As much as possible I try to focus on materials I've already paid for or are free (aside from some personal development, scrum and code smithing books purchased based on Kyle's recommendations https://www.linkedin.com/pulse/15-unconventional-book-recommendations-data-kyle-mckiou/). I've heavily used DataCamp to continue my learning (I have another 2-3 months), I have access to LinkedIn learning as part of my job seeker subscription, and am obsessive about documenting resources that pop up from different community channels, slacks, newsletters, etc.


In your opinion, are small startups or larger, more-established companies likely to be open to bootcamp grads?

That's a great question. To be honest I've only applied to companies that could qualify as start-ups (whether late or early stage) because I like working at startups and have spent most of my career working at startups. I think it helps that I have a data science title on my resume (although I've also had some rejections because I was "downgraded" to a senior analyst - stil no regrets about changing companies). To be honest once you get in to a room or on the phone with a hiring manager or data scientist and you really know your stuff they ignore the bootcamp bit.

I've been mainly using LinkedIn, Indeed, and AngelList for finding job postings. Would you recommend any other sites? To be honest I've only used LinkedIn. I think my hit rate on getting a recruiter to call back is about 10%. There are definitely things I can do to probably improve that but it seems like the biggest challenge is I only have at most 2-3 qualifying data science experience (and I've been mostly applying to senior data scientist roles). With that being said I've gotten interviews at Instacart, Coursera, LinkedIn, Facebook, etc so I'm not terribly worried about getting a recruiter call back. My biggest focus is ensuring I pass the technicals and onsites as I've yet to get an offer.


Is there anything else you found particularly helpful coming out of the program?

Aside form the resources and programs I've listed above:

  • Honestly, setting the right expectations is a huge part of being successful, specifically around how long it takes to successfully land an offer. And understanding the kind of (1) data practitioner you want to be (data scientist, data engineer, BI manager, ds product manager, etc) and (2) what quality of practitioner you would like to be.

Springboard and DSDJ were all great investments for me but the reality is that if everyone could learning to be great data scientists from 15K plus 6-9 months of blood, sweat and tears then data science wouldn't be a great job to be in & wouldn't be a high paying job. When I was getting killed in ds interviews initially I was pretty frustrated. I still get frustrated. I bombed an interview with a company this week (that is one of my dream data science companies) because I couldn't finish coding an optimization problem within the time window that a 19 year old CS grad could probably answer in their sleep . Spent two days crying and pissed off. And I definitely see a lot of posts on linked from people complaining about how hard the entry requirements are for data science and "why should they expect PhD me to code like a Software Engineer?!", and "you only need these 5 skills" and "I didn't get a job straight out of boot camp what a waste I need a refund" etc etc.

When my friend first approached me about an equity only deal working as a ds contributor, my family and mentor's reactions were "What are you thinking?! Didn't you do the program to get more money?"

I saw it as an opportunity to gain really valuable experience and I'd get to weekend project with really smart, interesting people while continuing my job search for a main hustle as a data scientist (the weekend startup is still raising initial seed funding and most likely will not be able to pay a competitive package for at least a year or two). However what happened was that the minute I essentially took co-ownership of the product, everything started to click into place, especially around the at times seemingly endless and opaque list of requirements for data scientists (like proper statistical testing & experimental design, agile model deployment, good testing & debugging of code, really thinking end to end). When you're creating your own consumer machine learning product that needs to successfully ship & meet customer demand such that we can rapidly establish & capture market share in a fairly niche area of real estate tech, all your inputs & decisions matter, especially given you're trying to pay yourself in the future.

A lot of companies have "data scientist" roles posted that are repackaged business analyst roles. For me personally I determined that I want to become the kind of data scientist that (1) is not doing business analyst work, (2) is creating internal data products that power customer-facing apps and internal strategy & planning, (3) is not doing novel research & algorithm development. So I've structured my development over the next 6-9 months to reflect that shift.

Clone this wiki locally