Home

Do You Need a Computer Science Degree to be a Software Developer?

Published 06/06/2018

College, at this point, is a lot like war.

War/College, what is it good for? Absolutely nothing.

That’s not the entire story with college, but it’s getting closer and closer to the truth.

What is this college thing of which you speak?

At Gunner Technology we have a theory that, since companies can’t give IQ tests anymore, these companies use college as a pseudo-IQ test.

Because the reality of the situation is that IQ does have an influence on work performance and success. It’s not a pleasant fact, but the correlation is undeniable.

So companies look at a degree from a good college and a high SAT score, and know that you probably have a decently high IQ. (The SAT test, especially the math sections, is effectively an IQ test. The correlation is so high, they might as well be the same thing.)

One important thing to note is that if you went to a good school as a legacy student, that inevitably makes your accomplishment less impressive. There’s just no way to know how much your admission was because of your talent and how much was because of your name.

Beyond the IQ aspect of college, the value of a degree (especially as it relates to getting employed) is less clear.

Often the coursework doesn’t directly relate to the day-to-day work you’ll be doing.

A lot of coursework in computer science is highly theoretical. And certainly the theory is important, but it’s not something you’ll be considering that much in the real world. The real world is much more concerned with nuts and bolts.

So in college, you’ll learn about different types of programming languages and the pros and cons of each type. In the real world, you’ll write a bunch of code with different programming languages and see which one works better.

It’s like learning about a spoken language vs learning to speak a language. The former might have theory on the language’s origin and etymologies. The latter, you’ll actually be talking to people.

Which isn’t to say the practical is superior to the theoretical. As we often say, you don’t get the practical without the theoretical.

And thank goodness for the people who are happy to sit and read and think all day and figure out the principles that the implementers of technologies use.

Almost every piece of technology we use today, whether software or hardware, began in a university or research facility. It began with someone having a theory and proving it in the abstract. Only then do the theories transition from the theoretical to the practical.

But what about practical coursework?

Our experience has been that the practical coursework just isn’t intense enough. You can finish the assignments in a matter of weeks instead of them taking a whole semester.

Not only that, but you don’t need a course to teach yourself to write programs. There are so many resources out there today to learn how to write code and then the best thing to do is just to write a ton of it.

You don’t need to be enrolled in college to do that.

But what about that J-O-B?

Some corporate jobs might require a Computer Science (or similarly relevant) degree. Heck, some companies are starting to require a Master’s degree! (No wonder the younger generation is nervous about finding a job.)

If your goal is to work for a big company in a corporate setting, then, sure, getting that piece of paper is going to be worth your time.

And that’s not to denigrate that goal or getting a degree. That plan makes a ton of sense today. The job security and perks when working for a big company are nothing to sneeze at.

But if you’re more focused on the startup world or the smaller side of the technology sector, the degree becomes less valuable.

At Gunner Technology, it’s mostly a conversation starter.

What we’re really interested in is how you work and how you work in a team setting.

We give all of our applicants project-based entrance exams, for example. (And we pay them for completing them, by the way.)

If you can do good work, we don’t care if you spent a couple years in college.

And during the interview, we’re often tough and critical of work just to gauge how well the candidate is at responding to criticism. Because one of the most important aspects of working on a team is handling feedback.

That’s not necessarily something you learn in college, although you certainly could if you tried to. Which leads us to our final point…

College is what you make of it.

It used to be that one could know with some certainty that someone coming out of college with a degree was appreciably better than when they went into school.

That’s no longer the case.

(And we’re obviously not against playing beer pong, but that can’t be the sum total of your college experience.)

At this point, you have to be incredibly proactive during your time at school to make it as valuable an experience as you possibly can make it.

Universities these days are more concerned with receiving your tuition check than they are with making sure you’re ready to succeed in the real world.

(In fact, it’s in the best interest of colleges to make you completely unprepared for the real world. Because what do most people do at that point? They go back to college for a secondary degree. No wonder colleges are making money hand over fist.)

But if you make the effort, college can be a truly rewarding life experience. And it can make you a much better job applicant.

The important thing is to realize what companies are looking for and what you can do to make yourself stand out.

As we mentioned in our previous blog, the most important ability for software developers to have is stubbornness (or willpower or grit, call it what you want).

That’s something you can cultivate while you’re at college.

Build good habits. Learn how to manage your time and set goals. Develop a workstyle that works for you. Turn yourself into someone who gets the job done.

Having a paying job is a great way to force yourself to develop these traits. You’re forced into responsibility and you damn well better figure out how to handle it.

Another major talent that companies look for is being an effective team member. You’re going to be working with other people, and if you have no idea how to do that, you’ll be a liability.

Play team sports and join as many extracurriculars as you have time for. Learn how to function optimally with a wide range of personalities. Learn how to be a great teammate.

Finally, arguably the most important thing to learn in college is actually how to learn.

Especially with the tech industry, you’re going to be learning new stuff constantly. If you don’t have an effective method for learning new material, you’re going to get left in the dust.

So if we could give one piece of advice for anyone in college or about to start a university program, it would be: learn how to learn.