Degree In Computer Science: Is It Worth It?

 

Pretty much every big and serious company has a degree in computer science as a requirement for software engineers. However, many candidates consider it unnecessary, and they have pretty good arguments. So, let us check when such a degree indeed is required and when it is not.

When Degree Is Unnecessary

Girl With Laptop

The question of whether the degree is required depends on the job description. Somebody may be sad, others — happy, but in the modern world, more than 80% of software engineers indeed do not require to have a degree in computer science.

Most software engineers perform relatively typical activities — writing queries to DB, developing code using two or three programming languages, writing tests, performing code reviews, and so on. A clever person needs about one year to learn all that stuff and a couple more years to practice — and here you go, you have a perfect candidate for the software engineer position!

Modern software development methodologies are built for people with such qualifications and knowledge. If some person lacks some knowledge, it is easier and faster (and often cheaper) to employ another person with the required knowledge instead of training one of the existing employees.

So, lots of people with limited but different qualifications and experience can do pretty much all the job, right?

When Degree Is Requered

Person With PC

Well, “pretty much” is not the same as “all“. There are quite a lot of specific tasks that can be done by a qualified professional only. What are these tasks?

Every task or activity not covered in basic training of programming language will require help from the professional. For example, these can be architecture skills needed for medium and big applications, parallel and distributed programming tasks or issues, development of new languages, complex mathematical operations, and so on. The list is very long, and these tasks do not often appear, but they require help from a true professional if they occur.

It does not mean that a typical developer can’t handle such tasks, though. Of course, he can, but the quality of the solution and time spent on it may not worth it. An alternative solution is to send a typical developer to have advanced training, but as we discussed above, it is usually easier to find another person instead.

These are typical situations when a person with or without a degree in computer science may be useful on almost every project. You may match your situation to these scenarios, evaluate who you need, and then build your team according to expectations.