According to Code.org, there are a half million open jobs in computer-related fields. Only about 64,000 students graduated last year with a computer science degree. Source
There is no one correct path to a career on software development.
Many roads lead to successful careers in the tech industry.
Historically, most programming jobs were closed to anyone who did not graduate with a 4-year degree of some sort in a “Computer Science” discipline. For a while, you had to graduate from a very prestigious school to work at the top ten companies in the industry.
This is no longer the case. We’re hearing more and more stories of people from all cultures, all education backgrounds or no education background, learning how to write software. In late 2018, many top companies including Google, Apple, even IBM, all declared that applicants are no longer required to have a 4-year degree.
This can be both encouraging and demoralizing.
Having a degree in a software development discipline is still a competitive advantage in the tech industry. Although companies may not require a degree, having one will set you apart already.
The catch here, though, is what you’ve learned and how you leverage that in your application. We’ll cover this in more context in another chapter.
Having such intricate knowledge of systems will make you a great asset especially when working in low-level code and optimizations. However, not all degrees cover the same material, and some programs are a little outdated and don’t teach concepts like web development or back-end services or front-end frameworks.
I often get asked, “How can I compete with someone who has a degree when I don’t have one myself?"
Having taken the more traditional Computer Science route myself, I would suggest that people with a degree are the tool-builders. They’re going to make the next great database, framework, and programming language. Without a degree, but with software development skills, you will be a user of those tools to build other kinds of applications.
I’ve seen studies that a Masters degree or PhD in Computer Science is no longer a significant draw to set you apart. (I’ll link to the studies here when I find them again)
Yes, it’s impressive, and hopefully your respective work in these advanced degrees will be relevant to the companies where you’re applying. If your work is unrelated, though, you might not have any advantage over other candidates at all. Pay is no longer significantly higher for Masters degrees over other Bachelors degrees.
Bootcamps and “coding programs” have suffered a negative stigma for a long time. How could someone possibly learn the intricacies of software development in such a short amount of time?
I’ve interviewed graduates of various bootcamps and programs. I’ll tell you hands-down that longer programs are far superior to shorter programs.
9-week and 10-week programs simply don’t have enough time to teach you everything to be job-ready. 6-month, 7-month, 12-month programs are far more likely to make it easier for you to get a job.
I interviewed a young lady who was very eager to join the company where I was working. I asked her to show me her portfolio of work. She showed me her capstone, which was extremely relevant to my company’s business. I asked to see other work and she didn’t have anything else to show. I started digging into the kinds of classes she took, and specifically asked about software testing. “We had a half-hour class about it. We were basically told that software testing would be something we’d learn on the job.” I decided not to move forward with her as a candidate. We needed someone to hit the ground running, even at a junior level, and without software testing, it would slow us down more than expected.
Other candidates I interviewed from shorter programs likewise only had one or two projects to show me. Longer programs end up with a high quantity of projects to show relevant skill and depth of knowledge.
At the same time, I’ve seen 12-week bootcamp students get jobs before students who graduated from a 6-month or 7-month programs.
Do you HAVE to go to a school to gain access to the job market? Certainly not!
There are many resources on the Internet that can teach you about software development.
I’ve been known to lurk in the forums of FreeCodeCamp and see people work at their own pace through the free resources and find a job.
I’ve been a student myself at Udacity, who have many excellent programs as well as career placement assistance. Many students from Udacity have successfully gotten jobs in the tech industry.
Not everyone is cut out for a classroom, and that’s okay.
We’ll see in another chapter that how we tell our story and showcase our work can have a stronger effect on our ability to get a job than our education background alone.
The Muse has an article about someone who took two college classes and got a job at IBM. In this person’s case, they already had a history of working in the company, but two college classes were enough to switch careers completely.