Welcome to Pirate King I'm Daniel a Software Engineer at Microsoft
Some of the questions I get asked often in my Discord is
"Do I need a college degree to become a Software Engineer?"
"Is coding bootcamp really worth it?" "Can I become a Software
Developer by self-learning?" What do you think? Yes, you do need a proper
education to become one? Or no, not necessarily? Well let's find out
Pirates, before we begin, I provide any Software Engineering related advice
for free in my Discord server There's a community of about a
thousand members in the server already I'm also collaborating with CoLab to
teach a 3-week, hybrid-live course on How to ACE a Behavioral Interview
So feel free to check them out Links in the description below
So do I really need a proper education to become a Software Engineer?
Is a degree or a coding bootcamp absolutely necessary?
Well the quick answer is no You don't need a college degree nor a bootcamp
certificate to become a Software Engineer But they certainly do help
So in this video, I'm going to give an overview of the three ways of becoming a Software Engineer
They are One, by taking online courses
Two, by joining a coding bootcamp Lastly three, by completing a postsecondary
degree on computer science or similar Additionally, we're going to talk about
the investment time, investment money, and the investment result of taking each path
And by that I mean, how long does it take? How much does it cost? And how likely is it
to get a job and advance your career? Enough talking, let's dive into it
So How to become a Software Engineer
Number one is learning it yourself by taking online courses
It doesn't even have to be a course There are tons of free resources
online such as YouTube, W3School, and [FreeCodeCamp.org](http://FreeCodeCamp.org)
And tons of paid resources such as Udemy and ShareSkill
You don't have to be paired up with an instructor for it
To be honest, the coding courses available on the YouTube channels such as the FreeCodeCamp.org
and Traversy Media are more than enough to get you started too
They are free, but that doesn't mean the quality is bad
The fact that their channels have more than a million subscribers says it all
I also benefitted from their videos too I mention in **this video, Learn to Code
for Free,** that I made my own personal bookkeeping app
I developed it full-stack after watching a crash course on Vue from Traversy Media
Back then, I already knew react, so I wanted to try out something different
Anyways, before you even make any full commitments to programming
I recommend you check out their crash course on JavaScript, HTML and CSS
Because these free online resources are also good for getting a taste of programming
And determining whether programming is your thing or not
So let's talk about the investments of learning programming online
Remember, we're going to talk about the investment time, money, and result
How much time should you invest in learning it yourself?
It really depends on your commitment If you can commit at least two to three hours a
day on those online contents and are able to spin off a decent portfolio website or two full-stack
I would say you can find a job within a year or two
But if you can't commit that much time Then obviously it'll take longer
What about the money? Learning everything online will
definitely be the cheapest of all three paths Like I said, if you just watch the YouTube
tutorials, you can virtually learn everything for free
Investment result? I have to admit that it's the least likely of the three to help you land a job
For example, I've seen Software Engineers who came from Chemistry and Physics backgrounds
I even met a senior-level Software Development Engineer at
Amazon who majored in English Literature
But they unanimously agreed that their journeys were bloody difficult
It's also worth noting that it's really hard to stay focused
and motivated if you learn everything yourself With no one guiding you nor assuring you whether
you are on the right path I would assume so
How to become a Software Engineer Number two is joining a coding bootcamp
For those of you who do not know what a coding bootcamp is
It's an intensive technical training program designed to teach you the
minimum programming skills that employers look for
It basically teaches you the practical skills needed to become a Software Engineer
There were some bootcamps that required you to participate physically in a set location
But ever since the pandemic, I think most of them have shifted their courses online
Do your research There are hundreds
of coding bootcamps you can find in Google Most of them are designed to finish in a year
And the good cost-effective ones will cost you a little over $10,000
with some form of job guarantees I strongly recommend bootcamps
if you are one of the following One, you simply want to find the quickest
and cheapest way to become a Software Engineer Two, you are already working full-time,
can't really quit the current job, but are serious about a career transition
Three, you want to become a Software Engineer, but you can't afford the two
to four year college tuition or don't want to invest that much money and time into it
If you are one of the following, then again, first take a look at some of the free coding
tutorials online and see whether coding is a good fit for you before making any full commitments
So let's take a look at the investment side of things of becoming a Software
Engineer through a coding bootcamp Time. As a mentor in one of the online
bootcamps and having taught students and seen them successfully become a Software Engineer myself,
I can assure you that an investment of one year is more than enough to achieve your goal
Money. The tuition costs vary according to the type of program, the length of the program, etc.
But from my experience, you can find a good less-than-a-year-long coding bootcamp with job
guarantees for a little over $10,000 Result. As long as you follow
their curriculum diligently while digesting everything they teach you
You won't have much problem finding a job What about the jobs at big companies?
Can you get a job at FAANG by completing a bootcamp?
Well the answer is yes In fact there is a good
portion of Software Engineers straight out of a bootcamp here at Microsoft
So it is possible for bootcamp graduates to start their career at a tech giant too
How to become a Software Engineer Number three is the obvious and the
most well known Get a degree
Whether that be a college, a university, or a graduate school, whatever
It doesn't necessarily have to be a computer science degree either
For example, I'm not a CS graduate myself I majored in Electrical & Computer Engineering
at Carnegie Mellon University You learn more of circuits and
hardware related stuff and less of software But I did try to take as many software-related
or programming courses as possible And that was more than enough to
get my foot in the door I know some engineers who
studied computer science only for their masters Likewise, even if you are not strictly in CS
but similar like data science, information systems, or even electrical engineering
Try to align your courses to those related to software and programming
Let's talk about the investments Time. Obviously, getting a degree
is not a short endeavor You will most likely spend
at least two years for the degree Money. Two to four year programs are not cheap
Some universities like CMU where I graduated charge a brutal amount
of $60,000 per year just for the tuition Is it worth it? I'll let you guys decide
Result. I would say definitely the highest of the three
I mean, you invested the most amount of time, money, and effort
into it so the result better be good right? There's no such thing as a guarantee but a degree
will definitely help you the most in becoming a successful Software Engineer
Alright so we've talked about the three different ways to become a Software Engineer
One, learning it yourself from online resources Two, joining a coding bootcamp
And three, getting a computer science degree or similar
No matter which path you take, know this What's ultimately important is not the
amount of time and money you invest It's the fruit that you grow from it
Having graduated Carnegie Mellon University with low grades will not get you a job right away
Likewise good GPA with poor skills in leetcode won't get you into FAANG
either... or MAANG or MANGA or whatever Even if you learned everything online by
following YouTube tutorials If you have the skills to
whip up any websites from scratch You will draw attention from many companies
Long story short then What is the right or the best path for you?
Only you can answer that question However, I believe the time-tested
maxim to be absolutely true You get what you pay for
There's a good reason why I discussed in terms of investments throughout the video
The pros of self-learning and joining a bootcamp are tangible results in a relatively
short period of time at a relatively low cost But because you only focus on practical things,
you might lack the computer science foundation to move further up the corporate ladder
On the contrary, you will have invested a fair amount of time and money into earning a degree
Although you won't likely get a job as
quickly, you will have established the strong foundation needed to accelerate your career
If you are serious about becoming a Software Engineer and diving into the world of programming
Take all these into account, do your research, and ultimately decide what is best for you
Thanks for watching I'll see you on the next one
Bye