In my Programming Career Guide I have a section where I point out that you don’t need a College or University Computer Science (CS) degree to get a programming job.
Firstly, having a CS degree does not necessarily make you a better programmer.
I’ve met and worked with a large group of developers over the years, some with CS degrees, some without. I never found a pattern to identify a better programmer based
purely on a CS degree.
In my experience and opinion, having a CS degree does not guarantee you will be a better programmer, compared to someone without a degree.
Bill Gates and Mark Zuckerberg are just two examples of programmers who have achieved great success without a CS degree. Mark went back and completed his degree at Harvard in 2016, and Bill received
an honorary doctorate degree in 2007 – thirty years after he left Harvard.
While they do now have degrees, I think you would agree that they achieved a lot in their careers without one.
Secondly, having been in numerous interviews as both an interviewer and interviewee, the question about education qualifications has nowhere near as much weight as what
skills and experience you are bringing to the table.
If you can demonstrate excellent skills in software development, that’s going to give you a big advantage compared to someone holding a CS degree without any practical
After all, you are being hired for what you can do for the company, not for the piece of paper with your qualifications written on it.
With that said, I need to mention that if you are up against someone with a CS degree and practical experience, and you don’t have a CS degree, then all else being equal you
may find the other person might be the preferred applicant for the position.
There needs to be a way to separate applicants for a job, right?
Also, you may come across companies that insist on the applicant have a CS degree, but that’s getting rarer and rarer these days, and with good reason.
Ignoring any applicant without a CS degree seems to be an excellent way to miss out on a large pool of great programmers.
Over the past 35+ years, I’ve seen numerous people without degrees get jobs as software developers. In almost all cases it was because of the skills and practical
experience they bought to the table that got them the position.
Google and Apple Drop Degree Requirements for Programmers!
Yes, Google and Apple as well as IBM are three huge companies that no longer require you to have a degree to work with them. Now, thats not to say getting a job with them will be easy. You will start have to prove yourself and the interview process is aimed at eliminating all but the best programmers. But the point is, you don’t need a CS degree now.
And a lot of other companies are following suit – if you can demonstrate skills as a software developer, you can get yourself a job, even if you don’t have a computer science degree.
In Stack Overflows 2017 Developer Survey, which had over 64,000 responses, thirty two (32) percent of programmers said that their formal education was not very important or not important at all to their career success. The survey also showed that 90% of programmers overall considered themselves at least somewhat self-taught. This is a pretty huge statement in my opinion.
The survey went on to say that computer science majors and computer engineering majors were the most likely (49.4%) to say their formal education was important or very important.
That is interesting, right? What seems pretty clear here is that things are changing. About ten years ago, it was almost mandatory to have a degree. Now things are changing rapidly. Gaining a CS degree is no longer the holy grail because companies are no longer making them mandatory to have to work with them. It’s completely possibly to get a job as a programmer without obtaining one.
What should you focus on?
It makes sense to become multi-skilled as a programmer. If you know several programming languages, and/or frameworks, and are able to demonstrate competency in them, then your career opportunities will likely improve dramatically as a result.
It makes sense to focus on core languages widely used such as Java, Python, C++, C and so on. As well as technologies like Java Enterprise Edition and the Spring framework to name just a few.
Of course there are other factors in choosing a programming language so keep that in mind.
The bottom line is if you have excellent software development skills, and can demonstrate them, then it doesn’t matter if you have a degree or not.
So, start working on those software development skills today!