In the old world, companies used to differentiate between “technical” and “business” roles.
Career tracks matched these roles. Business roles were filled with MBAs. Technical roles had computer science or other technical degrees.
But along the way, something changed and technical literacy became more important for all roles. In the 1990s, three of the biggest employers were Ford, Chrysler and GM. Today, Facebook, Google and Apple “have 10 times the market cap but employ only a tenth of the people,” noted Dom Barton, global managing director for McKinsey & Co.
As Marc Andreessen wrote in his famous 2011 WSJ Op-Ed, “Software Is Eating the World.” Major transportation (Uber), hospitality (AirBnB), and financial (Coinbase) companies are increasingly run on software and are delivering services online. To have successful careers and stay relevant in business, all of us operating in the business world will have to develop and maintain a strong technical literacy.
Not convinced? The Harbus, the Harvard Business School’s newspaper, published a piece on why coding is the new business literacy.
Seeking technical skills, but not sure where to start?
It’s never too late to start. It doesn’t take many years (or decades) of learning to obtain a powerful technical skill-set. We’ll walk through a few potential starting points.
How old are you — and what opportunities are available at this stage in your life?
Cities like New York and Chicago are adapting their middle school and high-school curriculums to better prepare students for a tech-enabled world. Colleges have also created more technical opportunities. Harvard College announced that computer science had overtaken economics as the most popular undergraduate course. Duke graduated ~30 computer science majors in 2010, and six years later, 300+ students graduated with a CS degree — a 10x increase.
But what about the rest of us who missed this window? For those of us who already graduated from college (or are not going to attend college) — there are three ways to jump back in.
- Self-study via online programs or intro to coding books
- Attend a coding bootcamp — a 3–6 month long intensive program
- Apply to a well-known, accredited university for a masters degree or PhD (or as some friends have done: get a second bachelor’s degree)
This guide will focus on coding bootcamps vs. self-study, but we’ll briefly touch on applying to an accredited university.
An aside on graduate-level technical degrees
The major benefit of getting a graduate degree from a well-known university is: prestige. Even though Silicon Valley often claims to love college dropouts, brands like MIT and Stanford still hold a lot of weight for establishing technical credibility.
Many formal programs tend to be more academic than practical. Curriculums are slow to change and often don’t prepare students well for the skills in the job market today. Triplebyte, a YC company that matches programmers with companies, performed an analysis on college vs. bootcamp grads — and found that bootcamp grads “match or beat college grads on practical skills, and lose on deep knowledge.”
Nevertheless, to meet the job-market demand, universities are launching new programs — notably for the technical-business integration roles (e.g., Stanford’s joint CS MS/MBA Degree, Duke University’s joint between Economics and CS). Every quarter, there are countless new programs starting across the world. If you’re familiar with other new technical-business joint programs, leave a note in the comments.
From now on, we’ll focus on coding bootcamps vs. self-study.
How do you learn best?
If you have a lot of discipline, self-study is a good way to go. There are countless resources online to help you learn. Often people find the most success with self study if (a) they have a specific project that they want to build or (b) they follow a well-known curriculum.
Some of the most popular programs:
If you’ve successfully self-taught yourself, please share your story and favorite resources in the comments!
What’s a coding bootcamp?
A coding bootcamp is a technical training program that focuses on teaching skills that the market needs. Bootcamps are generally 2–6 months, and are designed to place students into jobs when they graduate.
For those looking to focus on mobile development, there are iOS and Android developer bootcamps. There’s also some excellent programs for data science bootcamps. In general, less technical bootcamps (e.g., product manager bootcamps and design bootcamps) don’t score as high ratings and don’t seem as impactful for job switchers compared to the technically-oriented ones.
Ok, if everything I need to know is online (and free!), why go to a bootcamp?
Learning how to code requires a maker-schedule: long periods of unstructured time to be creative and work through a problem. Graham observed: “When you’re operating on the maker’s schedule, meetings are a disaster. A single meeting can blow a whole afternoon, by breaking it into two pieces each too small to do anything hard in.” Coding is nearly impossible to learn in 1 or 2 hour long increments in the evening — it requires long 5+ hours stretches over many weeks.
Having experienced developers around helps a new student get through roadblocks faster. You can save hours of your life by working near someone who can skim your work and let you know that the problem in the code you’ve been working on for the past 5-hours is: a missing semicolon.
I tried many self-study courses and none of them stuck for me. Learning how to be a software developer requires a lot of effort to get over the “hump” in the beginning. As one person said — coding is like golf. Golf is absolutely terrible if you don’t know how to play, but as soon as you can play 18 holes, it’s fun. I needed in-person class time and structure to build my base — so I decided that coding bootcamp was the right move for me.
So, how do you pick a bootcamp?
Start with the city you’d like to live in
Most of the major US cities have a top-tier coding bootcamp. It’s useful to start building your network in the city you’d like to live in long-term. You’ll also make life-long friends in the bootcamp, and they will be indispensable to have around when you’re starting out.
Pick a bootcamp that fits your learning style
Some bootcamps are for people who are starting at zero, and others are for people who start at “20%.” Some are in-person and others are remote. Some are shorter/longer than others.
- Hack Reactor/Maker Square — Dubbed as the “Harvard of bootcamps — the best place to get your CS degree for the 21st century.” It’s more expensive than the other ones. Generally if the others start when people have 0% skills, Hack Reactor requires 20%. You’ll have to study a decent amount to get into the program. When I was applying, I was working full time in private equity and didn’t have the capacity to do that kind of studying to get into the program. So, I didn’t apply.
- Dev Bootcamp — I graduated from here, and I’m biased. Similar to Hack Reactor, it supposedly has a 5–10% accept rate, meaning that people who attend are serious about the program. Getting in requires some studying but less than Hack Reactor, perhaps ~15 hours of Ruby on Codecademy. The thing I like the most about this program is its emphasis on emotional intelligence. EQ, meditation, yoga and empathy are all a core part of the curriculum and culture. Compared to other programs, it’s longer. It has about 2 months of “remote” work (e.g., 20–25 hours per week) and then it goes into 3 months of intensive (e.g., ~6 days a week 12+ hours per day). The benefit of the 2 months of prep means that all students arrive on the first day of the intensive session with a similar background. In other bootcamps, students arrive with a more varied set of experiences and some are much more advanced than others.
The coding bootcamp landscape is constantly changing. None of these schools are accredited, and they are regularly updating their curriculums to match today’s job market.
Which language should I start with?
Is coding bootcamp really worth $10–15k?
Note: Just because a bootcamp costs $15k doesn’t mean it’s a quality bootcamp. There are many scams on the market. Ask around for recommendations before applying or attending a bootcamp. There’s only a small number of good bootcamps, and then the quality drops off quickly.
Many people ask me whether it makes sense to quit their job and drop $15k. It’s a tough decision that you’ll have to answer, but programs like Dev Bootcamp can soften the blow. The first 8 weeks of Dev Bootcamp are remote, and only require ~15–25 online hours per week. Many people in my cohort stayed employed during that time (I did, too). After that time, you are able to make the decision if you want to quit your job and do the full-time program. I decided to quit and go full-time, but there were others that decided not to do the intensive bootcamp. It’s a great learning experience even if you start with the remote program.
From a financial perspective, many of my friends are working in junior software developer roles and getting paid post-MBA level salaries. [What’s better $15k in a coding bootcamp for $125k+/year salary or $200k of debt for an MBA for $125k+/year?].
Can I really learn enough in 3–5 months to get a real software engineering job?
Yes. Let’s do a thought experiment. At Duke, a Bachelor of Arts Degree in Computer Science requires 9 computer science classes. To graduate from Duke, a student needs to take 34 classes. This means that only 1 in 4 classes for a CS major at Duke was a computer science class — and the rest were core curriculum and elective classes. If college is 4 years, this means that a CS graduate has effectively taken 1 year’s worth of computer science classes. An academic year is ~8 months. So, if we compare a computer science major (~8 months of CS classes) to a bootcamp grad (~5 months), a CS major has about 3 months more training (plus, maybe internships).
Additionally, a CS major requires many academic courses that aren’t as applicable to the working world. CS degrees are often from liberal arts colleges that do not have such a focus on employment. Bootcamps are designed to place graduates into jobs.
Of course, getting a CS degree is a massive accomplishment and you will learn things that bootcamps don’t cover. With both paths, you’ll need continue to learn more, but the goal of the thought experiment is this: you can learn a lot and get dangerous in 5 months in a bootcamp.
Friends of mine from Dev Bootcamp and Hack Reactor have gone on and gotten software engineering jobs at companies like Google Life Sciences, Coinbase, Instacart, and many other engineering-led companies. They competed against CS majors for all of those roles. More and more people are entering engineering careers via non-traditional paths.
Perhaps most importantly for me, Dev Bootcamp changed the way I see the world. Before I attended, I had many ideas that I wanted to build, but I had no idea how to do it. Now, my limitation is no longer skill, but time — and that’s empowering.