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

James Bedford on June 20, 2019

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 ... [Read Full]
markdown guide
 

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.

 

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.

 

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.

 

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.

 

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!
 

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.

 

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.

 

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.

 

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.

 

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.

 

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 !

 

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

 

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

 

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.

 

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.

 

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.

 

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.
 

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.

 

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.

 

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.

 

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.

 

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.

code of conduct - report abuse