Skip to content
loading...

Is a Master's/PhD degree worth the effort/money in the Software Engineering universe?

twitter logo github logo ・1 min read  

I recently got my Engineering degree, and immediately after that I started wondering if I should invest in a postgraduate degree.

What do you think? Is is worth the money/time?

Let's discuss this topic :)

twitter logo DISCUSS (11)
markdown guide
 

I can personally say, the Computer Security degree I received was a great experience, but the ROI is negligible. Now, if you plan on teaching, then getting a Ph.D. is a great idea, as well as a necessity.

One of the best bang for your buck Master's degree are the ones offered by Georgia Tech. They run 7-10k dollars and they have a lot of great specialized areas (analytics, machine learning, etc).

 

In the US, unless it's from one of the top 10 universities (Stanford, MIT, etc) I don't think it will be a good ROI. The cost is quite high and what you'll learn is probably going to be a lot less useful to employers than someone who has 3-5 years of real world job experience. The only reason I see to get this degree would be to have a career in teaching in academia.

 

So I did a PhD in Comp. Engineering (with emphasis on survivable distributed systems) & worked in R&D for 10+ years before switching to more development/advocacy focused roles. I've also interacted/worked with diverse people in academic, industry, startup & community careers in the past two decades.

My opinions below are based on that experience.

1. Don't do a graduate/postgraduate degree for the sake of doing one.

Grad school has lots of benefits but also involves a lot of work, time and energy. So before diving in, you want to be sure you know why you are doing it, and what you want to get out of it or you will burn out and feel frustrated.

In hindsight, I wish I'd gone into the real-world and worked first with a few diverse startups or companies in "emerging" industry domains so I could get a better sense of where the challenges & opportunities were. I would have made different choices (e.g. courses I took, topics & problems I tackled, people I collaborated with) if I had realized that consumer-focused work (ubiquitous computing, behavioral sciences) was more to my liking than enterprise (reliability engineering).

2. Focus on choosing the right advisor/group to work with, not on the university.

It's counter-intuitive at first, but will make sense when you think it through. Advisors shape the way you think (about tackling problems), the impact you have (with your research) and the networks you build (in collaborative projects, funding sponsors, and lab alumni).

If a university provides 10X name recognition in the general sense, a good advisor will provide 100X name recognition in the specific field of your research. Plus, you will learn that smart & driven advisors will find a way to succeed in any environment, are often more likely to attract other smart students/investors to their research, and have strong alumnus networks of their own (often in the universities or companies you favor) that will serve you well in your long-term career.

3. Sometimes picking a strong advisor in a non-traditional university will work in your favor.

They not only have more time/drive to focus on that research group, but they will have a better shot at getting funding, visibility and impact within that region. And, inevitably, as they rise in their field they will have options to move to other universities (taking their research groups with them) or work with relevant industry, government and academic collaborators on impactful projects.

Yes, grad school is expensive, time-consuming and stressful - but it has undoubtedly had the greatest influence on HOW I think through problems in a rigorous and innovative way thanks to advisors, collaborators and resources that I had access to while there.

And that is a skill that has long-term career value.

 

Short answer: NO

Long answer: If you want to teach, or else work in a branch of scientific computing or algorithms research, a Masters or PhD are excellent (and generally vital) paths! They may also be helpful if you learn best through guided study.

However, if you are an independent learner, and just want to be some form of a programmer/software engineer/software architect/{insert other fancy HR-coined term here}, there's no need to spend the extra time and money. Outside of the aforementioned fields, a Masters or PhD has fairly limited value for the price. Sure, you'll find some jobs open that you wouldn't otherwise, but not as many as you would think, and not necessarily better paying either.

 

I'm in a situation where my Bachelor degree is in Mechanical Engineering, but I've been doing software engineering for most of the last decade. I often feel like I've "missed something" due to no formal education, and I also feel like I'd get the robo-boot during the candidate screening process because my education doesn't match the job description.

I feel like a masters would benefit me, but I'd like to hear anyone else's opinion on this. Would an advanced degree benefit me given my background? (sorry to hijack your discussion, but it seemed related)

 

Hello,

I will just drop my though there.

Degree talks to HR, skill talks to your peers!

 
 

This was the idea, to discuss scenarios! Hijack at will haha

 

I am doing my MS in Computer Science besides my full-time job as Senior Android Application Developer. In my country's scenario it helps to stand out if you have both skills plus higher possible degrees, especially when applying jobs in larger structured non-startup companies.

 

I think that money never should be an incentive to study something. You have to want it, feel it. are you going to enjoy it more than work? is it going to fill yourself as a person?

 

It's worth the money and time if it's something you want and if you're planning to do something in the future that will require it. Otherwise, no. There's no single answer.

Classic DEV Post from Jul 26 '19

🎩 JavaScript Enhanced Scss mixins! 🎩 concepts explained

In the next post we are going to explore CSS @apply to supercharge what we talk about here....

Federico Kauffman profile image
CTO at Streaver. Passionate Software Engineer. Host and Co-organizer of the Montevideo JS meetup
JOIN
DEV
NOW

A True Coding Community