DEV Community

Jamees Bedford
Jamees Bedford

Posted on

Why I don't think a Degree is Necessary to Become A Developer.

Wind the clock back fifteen years and I was in school, just finishing my GCSE's and moving into sixth-form college (high school). Let's just say I wasn't the ideal pupil, I ended up finishing college with an attendance record of just over 50% and barely scraped through my exams.

I had spoken to numerous career advisors who had all told me the exact same thing, "you need to go to University". At the time I couldn't comprehend that actually I was being pushed down a route towards a four-year degree that would cost maybe £30,000+ on a subject I didn't even know I wanted to pursue.

I didn't know what I wanted to do in the future, and didn't want to walk down a path I wasn't 100% sure about.

Not going to University went down badly with my college tutor. I have bad memories of having to stand up in front of my peers and answer why I wasn't going down that route. Of the five people (including me) in my group who originally said they didn't want to go, I was the only one come to the end of the year who hadn't changed their mind.

Needless to say, University / College is a good idea for some people, however, for others, it isn't a smart choice. I know so many who have got a degree but work in a dead-end job and are up to their eyeballs in debt.

So you might say this is a topic I feel quite passionate about. Here are the reasons I don't think a degree is necessary to become a developer in 2019:

👩‍🎓 Resources and Learning

There are so many online courses out there to help you become proficient in programming. Most of which are completely free. Even ten years ago, most of these weren't around or at least weren't developed enough to be useful.

If you apply yourself and keep to a strict learning schedule as you would if you were in education, then you could arguably make quicker progress than if you were in school (that brings me to my next point).

Being able to learn on your own terms is also a powerful thing. I know for a fact I am no good in a classroom environment and learn much better by building and doing. If you discover your learning style, you will flourish.

⚛️ Specialisation

Degrees often cover Computer Science as a broad subject and don’t often cover new and emerging technologies and frameworks. They stick to a curriculum that is already been created. If you have taken any courses n Udemy you will know that they are constantly being updated with the emergence of new tech.

Being hyper-focused on one technology, be it JS or Java or Python... You will make progress much quicker if you focus on that one language and keep up to date with tech.

⚒ Experience

It’s possible to gain the necessary experience to get a job working freelance or on open source projects. Most job adverts will ask for “degree OR relevant experience”. If you are able to display you have worked on open source or freelance, a lack of a degree won’t be a problem. It is actually more preferable to have a candidate that has worked on these projects that someone that hasn't.

🤝 Soft Skills

Working other jobs give you soft skills that you wouldn’t pick up from being at college/university. That experience is an extremely valuable asset to any developer, especially when applying for jobs.

Client facing ability from working in a store, time management from working in an office environment... It's all incredibly valuable.

📝 Job Applications

Degrees will only carry you so far through a job application.

If you can present yourself as a better investment to the chosen company by preparing and researching what they are looking for and then tailor creating your approach to your chosen company you will be much more effective.

To put that clearer, and to highlight the fact that there are other important aspects of a candidate, what would you rather have... Someone WITH a degree who comes across in not a particularly professional manner, or someone WITHOUT a degree who has the same technical ability who is professional, passionate and motivated.

...

The purpose of this article is not to bash degrees. I know that they offer someone a broad depth of knowledge over computer science foundations and advanced topics that potentially a non-educated person isn't going to have. For some people, they are definitely the right path.

What I am saying is that you shouldn't feel pressured to get a degree or even be put off of applying for jobs if you are a self-taught programmer. I work in a company that has many Masters graduates and even PhD graduates, yet I don't feel held back by my lack of formal education.

Discussion (22)

Collapse
georgecoldham profile image
George

I work alongside people who did 4/5 year apprenticeships in software engineering. They got the equivalent of A levels and usually a degree equivalent. All without debt at the end and all with real work experience and a network.

I regret not going down that route, but its hard to do something that you had no idea existed. When schools performance is based upon how many people go into higher education, thats where everyone is pushed.

I think a degree is important, it demonstrates experience of planning, organisation, an ability to learn and foundation knowledge. Im not convinced that going the standard school => uni => work route is the best way though.

Collapse
jameesy profile image
Jamees Bedford Author • Edited on

That's exactly right, providing options for those who need them rather than just trying to make their records look good should be paramount.

Definitely, apprenticeships are a really great thing. I live quite close to Vodafone, and I know their apprenticeship schemes are fantastic yet competitive to get in to. I think looking back I would have liked to have done something like that.

I agree with what you are saying. Is my post right for those who are 16 and looking to jump into the world of dev work, probably not? I would for sure recommend someone in that position to do a boot camp or an internship or an apprenticeship before applying for whatever jobs and certainly not feel pressured into going to University. However, I speak to a lot of people who have come from careers elsewhere looking to get into technology and are considering going back to school. That is not necessary because the life skills make up for it.

Collapse
scottishross profile image
Ross Henderson • Edited on

I was a decent student at uni. Passed everything (not excelled) but I never really tried. Went to university because I had no other option like I couldn't comprehend not going.

I hated it. I consider it a waste of 4 years and probably screwed me out of about 7 years of potential.

I eventually got a crappy job in a call centre and got promoted to Tech Support. In there I got my first taste of coding and 3 years later I'm building software for Building Societies and Banks.

University will never teach you passion and that's all you really need.

Collapse
maheshkay profile image
Mahesh K

As far as front end, web design is concerned I don't think degree is necessary. But people should stop advocating next generation to be illiterate with no knowledge in science, history, maths. I mean we want mars robots or missile guidance systems to be coded by 8th std dropout with bad math and physics to be a developer working on such project? Not a healthy preaching.

Collapse
samaldis profile image
UKJP

100% with you on this, I skipped uni - and even dropped out of college as I found the BTEC in Software I was taking was so generic I could have done the software design in my sleep - hmmm how do I make a pizza shop their jazzed up TODO list "Pizza ordering app" with no Database/Persistence in Visual Basic 6 - sorry long time since college - while in my spare time I was already earning ~£1k a month by creating apps for android which had just been released and was offered a commision for toolstation - although unfortunately due to pressure from parents I tried and dropped out of A levels so didn't have the time needed to create what in those days would have earnt me up to £80k - biggest regret.
My first real job in IT was as a Senior Software Engineer (Literally I started as Senior)
Most businesses want to see something that stands out rather than the generic degrees everyone else has, most of which only teach the basics, my wife did a degree in software but can't write more than
int main() {
writeout("HI") // intentional invalid syntax and non-C standard lib function
}

However I am now self-employed and have had times where I feel there should be a core subject in enterprise & legal introduced at compulsory GCSE level to give people the option incase they don't want to do the same as everyone as there was a lot I was a little unprepared for when it came to learning laws, employment rules, bookkeeping, accounting etc.
Everyone learns different and it's about time the gov.uk woke up-to that especially at a time we need more enterprise's made in the UK to replace all the services we offered the EU - my 2 pence not going to start a political flame war.

I may be on the hunt for a UX designer soon and if you don't have another job I would happily employ yourself or someone without a degree as often we haven't been trained to think inside of a box, or in the same manner as a lecturer.

this is not meant to be an attack on those who do choose to get a degree, its just not how I wanted to do it and everyone learns different

  • btw well snagged domain name!
Collapse
scotthannen profile image
Scott Hannen

Skilled developers are just too hard to find to worry about whether they studied Western Literature or Biology.

Sure, a college degree is an indication of persistence and determination. So are lots of things that don't take four years and cost tens of thousands of dollars that go to pay for other students' sports equipment and coaches.

I've worked with some computer science graduates who were insanely smart. They learned a lot in college. Nothing was going to stop them. They would have learned anyway. A lot of smart people come out of colleges, but a lot of smart people go in.

If you want to be a software developer, odds are that a college will sell you a very expensive combination of what you don't need and what you already have.

Collapse
moertel profile image
Stefanie Grunwald

The question is not about whether or not to go to university, but to realise that a degree will not magically equip you with all that is necessary to start a great career. Both paths - university and self-taught - will require a lot of mental strength and discipline to succeed and to get the most out of it.

You're mentally strong and disciplined? Congratulations, you'll likely find your way, no matter what. ;D

Everyone should ask themselves why they want to pursue a degree. If the answer is "I'm insecure about my abilities" or "I don't know what else to do" then it's almost guaranteed to be not of much value.

You can drag yourself to uni every day, are demotivated, do only as much as strictly necessary, and in hindsight it will appear like a waste of time. Rightfully so! You can put in everything you can, find yourself a mentor, build a network, actively compare the formal education to the software ecosystem in the "real" world (internships, part-time work, etc.), and leave uni with a strong understanding of your abilities and how to develop them further. (Two simplified extremes; it's a spectrum, granted.)

If someone is already a self-taught programmer, then I agree with your advice 100%. The main take-away here is that nobody should ever feel pressured to spend 3-4 years of their life just to tick a box on a hiring checklist.

However, if I may suggest an improvement to your article, I'd put the "The purpose of this article" paragraph to the very top.

Collapse
sridharpandu profile image
sridhar pandurangiah

This problem seems to be universal. University has courses that have little alignment to what's required by the industry. Thats probably because the process that's required to have a course included in the syllabus is rather lengthy, you first have to get a consensus among officials and staff, followed by staff training then make it part of the syllabus. I have been part of a few syllabus review commitees and I remember recommending Ubuntu and Drupal to be included, only to be told that its difficult to get trainers! This approach to setting syllabus creates a deep void in learning, epsecially essentials of computer science like Databases, Algorithms etc. To address this several institutes have sprung up in this part of the world, offering short term courses that teach you MySQL, PHP, Python etc but then these institutes are driven by commercial considerations. They offer courses on subjects that create the most noise on Social Media. I was recently flodded with a lot of resumes from freshers who have done courses in Blockchain, AI and ML! As an enterprise application firm all that we look out for is people with full stack skills and a good knowledge of engineering processes like using GIT alas its a quite a struggle to identify and get the right talent considering that each college spews out about 500 students in computer science and related subjects.

As an experiment we have been working with a few colleges to allow their students to do their internship starting from their first year of technical education. We hope to see these initiatives bear the desired results four years from now.

Collapse
niorad profile image
Antonio Radovcic

I completely agree that a formal degree is not needed for most dev-jobs.

University is more about social status and socialising.
You're learning how to behave in academic circles.
Other academics will prefer you over somebody self-taught.
They like you because you went through the same or similar struggles, and you pass that gateway with your masters or PHD.

This has nothing to do with the quality of your code.

University = More money and influence down the road.
I highly recommend to get as high a degree as possible.
You don't need it, but it makes your life so much easier.

BUT, as Front-End-Dev without a CS-degree, please allow me one plea:
Dear CS-grad, please spend your brain-cycles on saving the world, not on npm-install.

Collapse
jdforsythe profile image
Jeremy Forsythe • Edited on

I wrote my first piece of software in 1987 at the ripe old age of five. 32 years later, I'm a Senior Engineer / Cloud Architect and run a side business. I quit college and only had a single semester of debt. I wouldn't do anything differently.

If you have the inner drive, you can make it as a developer without a degree. No question.

There are a lot of good things to be said about school, but for $100k or more? You're likely not learning that much. The many years of self study are way more valuable than a four year degree.

Teach yourself. Practice. Write useful things. Learn about the business world, one of the many things you won't learn at school. Do side work. Contribute to open source. Do these things and you'll be ahead of most people who have a degree, in less time and with less debt.

Collapse
jselbie profile image
John Selbie

As both a software developer and a team manager at a large tech company, I've had some amazing engineers on my team that did not have a university degree. Some were self-taught. Some had dropped out of college. Some came from a non-traditional school (such as Digipen). Or they have a degree, but it's not Computer Science or Computer Engineering. Or they got an undergraduate degree in a completely different field, but went back for grad school in CS. At one point, I was managing a full time software engineer who was only 19 years old and only had a high school degree.

What I really like about having developers from non-traditional education backgrounds is that they add an element of diversity to the team that is often overlooked in the hiring process. For example, an engineer from a rigorous academic school may approach a software problem in one way as he or she learned from class and summer internships. While the engineer without the degree might approach it from a different perspective that is more practical with a more maintainable solution.

On a long enough time line, the team members start benefiting from each other when they observe each other's design documents, pull requests, and have to collaborate with each other. Everyone gets better over time, but in different ways. I can't overstate how important this can be in building a team up.

Collapse
patrixr profile image
Patrick R

The thing I value my degree for, is opening up doors across borders. It's not uncommon for some countries to require a degree when applying for a Visa. Some large organisations sometimes do as well.

I don't necessarily agree with that, nor do I think it should be the main reason to start studies, but I do think it's a point often overlooked.

Nice read, cheers !

Collapse
andreasjakof profile image
Andreas Jakof

Don‘t feel held back.

I started studying CS and I found it boring. I still own a degree in economics, but that’s as mostly due to meeting my (at the time future) wife and wanting a little to impress her (not lacking behind).

I still was able to land my first job after graduation as a software developer. I admit, I had quite a lot of luck. I was writing an evaluation about a technical solution and my future team lead came by and asked me, whether I can code. I said „yes, but no C++ yet, but that’s just syntax“.
I got the job right after graduation, changed to a consulting firm after about a year. (I was open about that right from the start.) And I am now working at a former customer earning about twice as much as 10 years ago. And others are saying I am quite good at it.

So to make a long story short: It is quite possible to make living of coding without having a degree in CS, as long as you are passionate about it and you are willing to learn. But I guess that is also necessary with a degree as well.

Collapse
ssimontis profile image
Scott Simontis

There was so much I could have gained at university had I applied myself. There were semesters where I didn't go to class unless there was an exam that day and courses where I didn't even open the textbook until two days before the final, proceeding to learn the entire course in 48 hours straight. It was a challenge to see how little effort I could exert and still get by until my senior year, when all of a sudden I didn't have a solid grasp of the prerequisites for my final few classes.

I ended up dropping out and briefly doing something entirely unrelated to computers (emergency medical technician). I came back to programming after a few months; I moved back in with my parents, learned ASP.NET MVC and got myself a consulting job.

I missed out on a lot of opportunities at university. I got a chance to work on a research project with embedded systems and I half-assed it when I could have built the connections to study a part of computing that continues to fascinate me. Lots of networking opportunities missed. Lots of life experiences which take place outside of Battlefield: Bad Company 2 and CoD BlackOps that I totally missed out on.

Collapse
steelwolf180 profile image
Max Ong Zong Bao

To me, it depends it will be good to have but it is not a real need to get it if you are willing to hustle to find a way to get your foot in the door and working on your skills and networking.

Coming from an Asia country we do pressure our kids for academic excellence to get a degree to be doctors, lawyers, bankers and engineers due to prestige and large income.

Collapse
ponickkhan profile image
Md.Rafiuzzaman Khan 🇧🇩

I have been a developer for over a decade without any degree or training. There was no issues in my work for that and in lot of cases i was better than my colleagues. But i was getting social and family pressure to get a university degree. They thinks there is no way to get a stable career without a good degree. I am now a 3rd year student doing CSE and it was not fun at the beginning. Most of the people are there is pedantic jerks!Few courses are too boring and unnecessary. But after doing all these courses it changed my perspective and how i was looking into things previewsly.and now i can say A good degree in related field is not necessary but it could definitely improve a developer in lot of ways

Collapse
natonathan profile image
Nathan Tamez

I wrote a post

in which I talked about my first year of university and my choice to leave a Dev job to gain a degree and my reasons to do so. That said I do agree with you I many ways. University is not for everyone, I am lucky to be in the position I am. But not everyone in the tech industry has a degree, hell even Bill Gates dropped out of college. But although university may not be important, education sure is. I sill firmly believe that your better off with a degree and the drive and motivation to succeed even when massive obstacles are in your path to success. Also different paths do help the tech community in general so pick your path.
Collapse
evanoman profile image
Evan Oman • Edited on

I am really torn on this issue.

I strongly agree that too many people go to college without a plan and that many of the necessary resources are available online. However, there is no denying that my path of college and then graduate school had a huge positive impact on my career path. Academia was challenging and I still needed to seek out industry experience via internships, but when it came to finding a real job I was fortunate to have several options.

So that is where I am conflicted: I don't think my path is for everyone but at the same time I would feel like a hypocrite if I recommended the non-college route.

Collapse
jbradford77 profile image
Jennifer Bradford

I'm already a developer but now going for a degree because I've been turned down for jobs for not having a degree. The good part is the school makes it easy to test out if you're already familiar with the coursework so it's moving along quickly

Collapse
jamonjamon profile image
Jaimie Carter

I agree you don't need a degree. You really don't.
However, at a decent University(and this is the caveat) it makes all the difference, because it's HARD. Really really hard to finish those courses. Not only that, but to finish and retain what you've learnt is even harder.
Forget about the piece of paper - who cares. The amount knowledge you will gain at a high level and under considerable pressure in a short timespace is what you gain, and really, what you should be looking for.
You're young. Get yourself to a good University, this alone is very difficult, and do that degree. Go through the nightmare and enjoy every minute of it while you still are young. It'll be the best thing youve ever done.

Collapse
invot profile image
invot

Though I studied robotics for two years, I have no degree. For the last 10(ish) years, I've trained interns, lead teams that developed government and private applications, and have ran my own business on the side. It wasn't easy, but I did it. Sometimes I wish I did have a degree because I could have leapfrogged over a lot of garbage where I had to "prove" myself. What matters is that you can showcase what you know. So many times I didn't know how to express that I knew what I was doing. I didn't have a piece of paper to do that for me.

Collapse
xanagandr profile image
Guillermo Saldivar

In the end, the goal is still the same: Getting the knowledge you need to be useful in a company/project.

Each of us can decide which path is best for us, based on our talents and weak spots.