Should I go back to school to get CS degree? - Ask Preethi

freeCodeCamp.org · Beginner ·🌐 Frontend Engineering ·9y ago
Skills: PM Basics60%

Key Takeaways

Discusses the pros and cons of pursuing a CS degree for self-taught coders

Full Transcript

hey it's prey again and I'm back with the ask prey series and this is week number two um this week's question is a very interesting one and one that I actually get pretty commonly and so let's go ahead and read it he says I've been teaching myself to Cod for almost a year now I initially started from free code camp and other tutorials the more I learn about web Technologies like JavaScript the more I want to learn lower level languages like C++ a part of me wants to go back to college to study computer science I've done a little bit of research Arch and many seem to say that it's not necessary but I want to be marketable for a career in software development I have read that the industry is being flooded with jior developers that don't know enough to be productive so I suppose that is why I think I need to go back to school I had been applying to companies that fit my skill set and I haven't had received one response regarding an interview I'd really appreciate your advice on whether I should bite the bullet and go back to college or just keep getting better at JavaScript and web Technologies like react and angular this is actually a very common question I get and actually one that I also had when I was getting started with programming and I'll kind of start off by saying that there's really no Silver Bullet answer per se because it really just depends on you and honestly your circumstances your timing obviously and all that and what you can afford um but I can show you kind of my decision process for how I thought through this decision of whether I should go back to college if I want to become a programmer and I kind of outlined my decision process in my blog post on why I left the best job in the world so if you want a more detailed explanation of how I thought through this you can read that blog post um but let's just get started so I felt that for me I was already in a full-time job right and so for me I felt like if there's any way to learn to to for me to learn the skills of becoming a programmer without going back to college I was 100% for it um and the reason is because for one it's way cheaper right um like if I go back to college the tuition for college is what like anywhere between 10 20 40K a year and um I already had paid off I I already had a fouryear degree so I paid off already like $90,000 in student loans and I was like H I really don't want to take take out loans to go to college again and secondly it's it's I wanted a faster path um when I want something I really really want something and I want it right away and I didn't really have the patience to wait 2 3 4 years to get a degree and then become a programmer um I wanted the fastest path and and the most efficient path to get there and so before I made the decision what I did was I reached out to a ton of people and did a lot of research on this right so first I met with a bunch of people who went the traditional path and they had a CS degree and I kind of talked to them and talked to them about how they got to um what their first job was like how they how they made that transition from school to getting their first job and so forth and then I met a bunch of people who were more the the non-traditional path who were either self-taught went to a boot camp or both and um and I kind of talked to them about their process for how they kind of broke in to become become a software engineer and at the end of this whole research process what I realized was yes there's a lot of people who take the to take the traditional path of getting a computer science degree but there's also hundreds or thousands of people who are totally totally killing it without a degree um top of my mind some examples of people who I really look up to who fit in this bucket are like Dan abob who's the creator of Redux or P Irish who now works at Google or my really good friend has kesi who was a poker player turn and software engineer just like countless examples that I saw in the industry and what's common amongst all these different people were that they were passionate they were determined and they were smart and at that and they just wanted this really badly and they figured out a way to do this without the degree so I was like okay if these people can do it I can do it too right and and um I think when you're kind of making this this decision it's important to just be honest with yourself and so when I look back and think through why I think I might have been successful without the degree is you know there there's a few different reasons I can think of one is that um I kind of already had a technical background so in college I was a systems engineer and I you know because of that I took a lot of pretty heavy high high level math and Engineering courses so I already like I was already kind of trained to think very analytically I was very good with math and very good with numbers but that's not to say that you need a technical degree to be a developer I think I know plenty of people who studied like philosophy or psychology in college and then later on in life realized they want to be developers but for me like I think that was one of the reasons why I was pretty successful in this transition and um second I was obviously extremely passionate about it and and I kind of conveyed this passion throughout various blog posts I've written and I just wanted this so badly and I think because I wanted it so badly I was incredibly determined I I worked really hard and I put I put a lot a lot of time and effort into making this reality happen um and you know along the way I did have to give up and sacrifice a lot like for example I didn't see my family for almost a year during the process I didn't see a lot of my friends for many many months um I was pretty much doing this day out day in and day out just learning how to code every single day getting a little bit better at it and um even you know even my boyfriend I didn't see for like you know I saw him once a week which is like really really hard obviously but um you kind of I was kind of willing to give up these things because I knew that I wanted this dream to come true so badly um and I think uh this might motivate some people so early on in my decision process I was talking to a really good Mentor and you know he was he's this kind of um highly academic person who has a CS degree and he has as a PhD in computer science um you know went to Stanford so very academic and I was kind of telling him about my decision to go become a software developer and I was kind of saying like hey like I don't know like one thing I'm worried about is how will I ever catch up with these people who've been programming since they were 12 years old they literally have like a decade of experience over me and maybe even a college degree and what he said he looked at me in the eye and he's like what I see in you is grit and passion um you're going to get there in no time just just go for it and when someone like that said that to me someone who's academic and has a degree and he just like he's like no you can do it without it like just go figure it out it's all about just doing and that that really was inspiring to me and I was like okay I can do this without the degree um and kind of to address his question of you know the industry is being flooded with Junior developers that don't know enough to be productive I totally um I've heard this too uh there's definitely a lot of people who are trying to get into the industry more than ever now and you know everyone kind of wants to be software developers it seems and sure there's probably a lot of developers out there who are simply not ready for full-time jobs and maybe they're getting hired but they're not being productive and but you know like as I said there's plenty of examples to show out there of people who are totally killing it in the industry without a degree um the main thing to understand though is that it's not easy it just takes a lot of hard work and there's really just no shortcuts not getting a degree doesn't mean that you take a shortcut it simply means that you work really really really extra extra hard to kind of make up for that lack of degree right you can't just expect to maybe take a course online or attend a three Monon Boot Camp or take like you know like an online boot camp like Udacity or something and then all of a sudden magically have a job um you can do all those things but that's just one part of the process and in addition to that you have to put hours and hours of practice and work and and really just make up for that time that you didn't spend in school getting a degree and so um to not be one of those people who are you know not being productive in the industry you just need to go above and beyond and every person I know who's successful in the industry um that doesn't have a degree they're successful because they've put these hours and dedicated their lives to making this reality come true um so again if you're willing to put the hard work then you honestly just won't be one of these developers who's not productive I have never met someone who's worked that hard and and and like didn't get better over time or wasn't the one of the better per best programmers I've ever met right um and even if it takes you longer to get there than than some others just don't compare yourself to other people it's just about putting in the hours putting in the time practicing coding um getting projects on your under your bell like you know it's frustrating like the first few months are very frustrating just keep trying keep trying and over time like you'll look you'll look up and you you're like oh my God I just know so much how did I get how did I even get here right and I think um if I had to go back and think one of the hardest part about not taking this path of not getting a degree is probably getting your first interviews and getting your first job because you don't have you don't have any experience you don't have anything to show that you you can code basically and so um what I would do like as I as I said in my last video if you don't have something like if you don't have a degree if you don't have experience don't focus on what you don't have show them everything else that you do got so this can be this can be like um this can be like side projects or this can be like internships or this can be like open source work that you've done or blog posts that you've written um just make up for that lack of degree in other ways right and um another thing I want to empathize is if you choose to not get a degree one thing that happened to me was I noticed that like I was starting to I I really wanted to fill in my gaps of some of the formal fundamental CS stuff like things like computer networking operating systems compilers algorithms and data structures design patterns like these are things I still wanted to learn because I think those are very very important too if you're going to be a serious software engineer these are all important things to learn and so what I did was I would learn these things on the side um on weekends or nights just like picking up a few books and um just like learning learning them on my own because I I really want to fill in those gaps that I didn't get um through formal training and I actually have met with a few companies now that are actually um specifically targeting people who don't have CS degrees but are software engineers and they're teaching more of these CS fundamentals like I met at a school called Bradfield School of computer science in San Francisco and they teach things like you know computer networking computer architecture databases compilers so you know like find something like this to fill in the gaps if you don't get that formal training instead if you take more of a um online course or boot camp approach and lastly um the the writer who wrote in said he wants to be a C++ developer without a CS degree um or he's asking if you should get a CS degree to be a C++ developer obviously I can't answer that question because I've never tried that myself um uh I was a JavaScript developer and I also did some API work and backin work like I slowly moved down the stack um but my gut tells me it's definitely possible perhaps there's less C++ content and a lot more content to learn learn online with JavaScript Ruby or python but um I think anything in anything in the world is possible without a degree so if you if you're confident that you can do it um I don't think you I I'm never going to say that you must get a degree to do anything because I just don't believe that um but I do want to say that just because I didn't go back to get a CS degree it doesn't by any means mean that I think a CS degree is a waste of time in fact if I was in high school and I knew what I known now about computer science I'd probably do the computer science degree over the systems engineering degree that I did but you know like no regrets at the time when I was in you know 18 I really fell in love with systems engineering I loved my major um so I have no regrets it's just that I learned about computer science a little bit later in life so um I didn't have a chance to take CS in college but I think a CS degree if you're still in high school is obviously incredibly valuable and you should totally do it if you're in high school um but it's not game over if you haven't if if it's too late um there's always ways to to learn how to be a developer like I did and many others have done so um I want to close off by saying if you want to be a developer um you just need to start doing um you just need to start building because being a developer is not about sitting in a classroom or taking exams or taking tests or getting certificates or getting a degree it's really about just building software and if you can prove to people that you can build software the degree is just a tiny part of it and that will soon be Irrelevant in in the future and um and as I said there's just been thousands of people who've been successful without the degree and it really just depends on how much effort work and hard work you're willing to put into this so um yeah that's kind of my rationale for why I didn't take that path but um I hope you found this helpful and I'll see you in next week's video

Original Description

Question: I have been teaching myself to code for almost a year now. I initially started from Freecodecamp.com and other tutorials, the more I learn about web technologies like javascript the more I want to learn lower level languages like c++. A part of me wants to go back to college and study computer science. I have done a little research and many seem to say that it is not necessary but I want be marketable for a career in software development. I have read that the industry is being flooded with junior developers that don't know enough to be productive so I suppose that is why I think I need to go back to school. I had been applying to companies that fit my skill set and I haven't received one response regarding an interview. I would really appreciate your advice on whether I should bite the bullet and go back to college or keep getting better at javascript and web technologies ie react, angular... Answer: [See video] About Preethi: Preethi Kasireddy is an engineer based in San Francisco. She's an avid learner who taught herself programming and machine learning, and is passionate about understanding things clearly and explaining them to others via blog posts. She was previously a front-end & API engineer at Coinbase, a digital currency platform, where she helped architect and rebuild their front-end in React, Mobx and Redux. Prior to that, she was a partner at the venture capital firm Andreessen Horowitz and an Investment Banker at Goldman Sachs. She studied Systems Engineering at USC. Twitter: https://twitter.com/iam_preethi - Learn to code for free and get a developer job: https://www.freecodecamp.com Read hundreds of articles on programming: https://medium.freecodecamp.com ❤️ Support for this channel comes from our friends at Scrimba – the coding platform that's reinvented interactive learning: https://scrimba.com/freecodecamp
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from freeCodeCamp.org · freeCodeCamp.org · 31 of 60

1 React: Production Server Setup Part 2 - Live Coding with Jesse
React: Production Server Setup Part 2 - Live Coding with Jesse
freeCodeCamp.org
2 cookies vs localStorage vs sessionStorage - Beau teaches JavaScript
cookies vs localStorage vs sessionStorage - Beau teaches JavaScript
freeCodeCamp.org
3 Browser history tutorial - Beau teaches JavaScript
Browser history tutorial - Beau teaches JavaScript
freeCodeCamp.org
4 Graph Data Structure Intro (inc. adjacency list, adjacency matrix, incidence matrix)
Graph Data Structure Intro (inc. adjacency list, adjacency matrix, incidence matrix)
freeCodeCamp.org
5 React: Parameterized Routing with Next.js - Live Coding with Jesse
React: Parameterized Routing with Next.js - Live Coding with Jesse
freeCodeCamp.org
6 React: Dealing with jQuery Issues - Live Coding with Jesse
React: Dealing with jQuery Issues - Live Coding with Jesse
freeCodeCamp.org
7 setInterval and setTimeout: timing events - Beau teaches JavaScript
setInterval and setTimeout: timing events - Beau teaches JavaScript
freeCodeCamp.org
8 Browser and Device Testing - Live Coding with Jesse
Browser and Device Testing - Live Coding with Jesse
freeCodeCamp.org
9 Last Minute Updates - Live Coding with Jesse
Last Minute Updates - Live Coding with Jesse
freeCodeCamp.org
10 Post Launch Updates - Live Coding with Jesse
Post Launch Updates - Live Coding with Jesse
freeCodeCamp.org
11 React: Setting Up Google Analytics - Live Coding with Jesse
React: Setting Up Google Analytics - Live Coding with Jesse
freeCodeCamp.org
12 React: Masonry Layout - Live Coding with Jesse
React: Masonry Layout - Live Coding with Jesse
freeCodeCamp.org
13 Load Balancing Digital Ocean Droplets - Live Coding with Jesse
Load Balancing Digital Ocean Droplets - Live Coding with Jesse
freeCodeCamp.org
14 try, catch, finally, throw - error handling in JavaScript
try, catch, finally, throw - error handling in JavaScript
freeCodeCamp.org
15 Load Balancing: SSL Passthrough Setup - Live Coding with Jesse
Load Balancing: SSL Passthrough Setup - Live Coding with Jesse
freeCodeCamp.org
16 Graphs: breadth-first search - Beau teaches JavaScript
Graphs: breadth-first search - Beau teaches JavaScript
freeCodeCamp.org
17 React: Masonry Layout Part 2 - Live Coding with Jesse
React: Masonry Layout Part 2 - Live Coding with Jesse
freeCodeCamp.org
18 React: WordPress API Live Search - Live Coding with Jesse
React: WordPress API Live Search - Live Coding with Jesse
freeCodeCamp.org
19 Creating WordPress Custom Post Types - Live Coding With Jesse
Creating WordPress Custom Post Types - Live Coding With Jesse
freeCodeCamp.org
20 Dates - Beau teaches JavaScript
Dates - Beau teaches JavaScript
freeCodeCamp.org
21 Miscellaneous Front End Updates - Live Coding with Jesse
Miscellaneous Front End Updates - Live Coding with Jesse
freeCodeCamp.org
22 Merging a Pull Request from GitHub - Live Coding with Jesse
Merging a Pull Request from GitHub - Live Coding with Jesse
freeCodeCamp.org
23 React + Prettier + Standard JS - Live Coding with Jesse
React + Prettier + Standard JS - Live Coding with Jesse
freeCodeCamp.org
24 React: Sortable Responsive Table - Live Coding with Jesse
React: Sortable Responsive Table - Live Coding with Jesse
freeCodeCamp.org
25 Geolocation Sorting by Distance - Live Coding with Jesse
Geolocation Sorting by Distance - Live Coding with Jesse
freeCodeCamp.org
26 Tradeoff Matrix - Agile Software Development
Tradeoff Matrix - Agile Software Development
freeCodeCamp.org
27 The Definition of Ready - Agile Software Development
The Definition of Ready - Agile Software Development
freeCodeCamp.org
28 Getting first React job without experience - Ask Preethi
Getting first React job without experience - Ask Preethi
freeCodeCamp.org
29 React: Google Analytics Click Tracking - Live Coding with Jesse
React: Google Analytics Click Tracking - Live Coding with Jesse
freeCodeCamp.org
30 Submitting a PR to an Open Source Project - Live Coding with Jesse
Submitting a PR to an Open Source Project - Live Coding with Jesse
freeCodeCamp.org
Should I go back to school to get CS degree? - Ask Preethi
Should I go back to school to get CS degree? - Ask Preethi
freeCodeCamp.org
32 Hero Section CSS Changes - Live Coding with Jesse
Hero Section CSS Changes - Live Coding with Jesse
freeCodeCamp.org
33 Working Agreement - Agile Software Development
Working Agreement - Agile Software Development
freeCodeCamp.org
34 A day at Pennybox with Co-Founder Reji Eapen
A day at Pennybox with Co-Founder Reji Eapen
freeCodeCamp.org
35 React: Sorting and Filtering Data - Live Coding with Jesse
React: Sorting and Filtering Data - Live Coding with Jesse
freeCodeCamp.org
36 React: Sorting and Filtering Data Part 2 - Live Coding with Jesse
React: Sorting and Filtering Data Part 2 - Live Coding with Jesse
freeCodeCamp.org
37 React: Building a New UI - Live Coding with Jesse
React: Building a New UI - Live Coding with Jesse
freeCodeCamp.org
38 Definition of Done - Agile Software Development
Definition of Done - Agile Software Development
freeCodeCamp.org
39 Getting started with jQuery (tutorial) - Beau teaches JavaScript
Getting started with jQuery (tutorial) - Beau teaches JavaScript
freeCodeCamp.org
40 Making a React Blog with WordPress Content - Live Coding with Jesse
Making a React Blog with WordPress Content - Live Coding with Jesse
freeCodeCamp.org
41 React, NextJS, CSS - Live Coding with Jesse
React, NextJS, CSS - Live Coding with Jesse
freeCodeCamp.org
42 jQuery events - Beau teaches JavaScript
jQuery events - Beau teaches JavaScript
freeCodeCamp.org
43 React/NextJS Routing and WordPress API Custom Types - Live Coding with Jesse
React/NextJS Routing and WordPress API Custom Types - Live Coding with Jesse
freeCodeCamp.org
44 React: Working with API Data - Live Coding with Jesse
React: Working with API Data - Live Coding with Jesse
freeCodeCamp.org
45 React: Refactoring Components - Live Streaming with Jesse
React: Refactoring Components - Live Streaming with Jesse
freeCodeCamp.org
46 jQuery effects - Beau teaches JavaScript
jQuery effects - Beau teaches JavaScript
freeCodeCamp.org
47 More React Refactoring - Live Coding with Jesse
More React Refactoring - Live Coding with Jesse
freeCodeCamp.org
48 animate in jQuery - Beau teaches JavaScript
animate in jQuery - Beau teaches JavaScript
freeCodeCamp.org
49 "Finishing" My React Site - Live Coding with Jesse
"Finishing" My React Site - Live Coding with Jesse
freeCodeCamp.org
50 Starting a New React Project (P2D1) - Live Coding with Jesse
Starting a New React Project (P2D1) - Live Coding with Jesse
freeCodeCamp.org
51 React Project 2 Day 2: Learning Material UI - Live Coding with Jesse
React Project 2 Day 2: Learning Material UI - Live Coding with Jesse
freeCodeCamp.org
52 The Agile Manifesto - Agile Software Development
The Agile Manifesto - Agile Software Development
freeCodeCamp.org
53 jQuery: get and set with http, text, val, and attr - Beau teaches JavaScript
jQuery: get and set with http, text, val, and attr - Beau teaches JavaScript
freeCodeCamp.org
54 React Project 2 Day 3 - Live Coding with Jesse
React Project 2 Day 3 - Live Coding with Jesse
freeCodeCamp.org
55 The INVEST approach to product backlog items
The INVEST approach to product backlog items
freeCodeCamp.org
56 React Project 2 Day 4 - Live Coding with Jesse
React Project 2 Day 4 - Live Coding with Jesse
freeCodeCamp.org
57 Chickens and Pigs - Agile Software Development
Chickens and Pigs - Agile Software Development
freeCodeCamp.org
58 React Project 2 Day 5 - Live Coding with Jesse
React Project 2 Day 5 - Live Coding with Jesse
freeCodeCamp.org
59 jQuery: add and remove DOM elements - Beau teaches JavaScript
jQuery: add and remove DOM elements - Beau teaches JavaScript
freeCodeCamp.org
60 React Project 2 Day 6 - Live Coding with Jesse
React Project 2 Day 6 - Live Coding with Jesse
freeCodeCamp.org

Related Reads

Up next
How to Speed Up Your WordPress Website with WP Rocket ⚡Tutorial 2026
Matt Tutorials
Watch →