Why I Got My Masters Degree in Computer Science

Dan Goslen
Jan 23 · 8 min read
Image for post
Image for post
Photo by Charles DeLoye on Unsplash

I remember when I first told my team lead about possibly going back to school. He simply replied, “You don’t need it.” and moved on.

I then remember talking to People Services at my company about what it would look like to get my degree part-time while working. They agreed to discuss it, but they didn’t think I would actually follow through on anything. “Let us know when you get into a program. We can talk about it further then.”

When I did get accepted into a program, my manager gave me a baffled look. He was confused. “You really are going to go for this thing, aren’t you?” he said.

Eventually, all of these people came to support me. However, they all had the same question many people have when I tell them I went back to school for a master’s degree.

Why would you do that?

I’ve answered this question a handful of different ways over the years. But I’ve never given a very comprehensive one. This article is meant to be that answer. I’ll summarize my motivations, my situation, and why I ultimately went back to get my degree.

To answer this, though, I need to get a running start. I can’t just start at two and a half years when I started school. I have to start with how I came to love software in the first place.

Teenage Coder and Undergraduate

By the time I got to college, I was on a mission to understand computers as deeply as possible.

I’m also a genuinely curious person. Like many software engineers, I liked understanding how things worked. If I didn’t know how something worked, I would break it apart, trying to understand it; often not being able to put it back together.

Having a desire to understand the world and a desire to understand computers, in the same way, led me to set a goal of getting my master’s. It just seemed like the right fit for me.

As I was wrapping up my undergraduate degree, though, I realized I needed to get a job. I was in debt, and I was tired. Like really tired. I needed a break from the pace of academia.

So I got a job thinking that I might one day go back to school, but it was more of a pipedream at that point. No one goes back to school when they don’t need to, right?

Career Engineer

I wouldn’t say I was bored. I was learning and growing in my skills. I just recognized that the majority of the problems I was solving were pretty close together. I was being challenged in some ways, but not in the deep, technical understanding of how computers worked.

Around this time, I also started looking for other roles. As I searched, I noticed that most roles I got excited about all mentioned a preference towards a higher degree. I thought this was interesting as I had always it didn’t mean that much.

I started doing some more research. I took a look at the people around me who had the roles I was wanting to grow into. I realized that many of these people did have some form of a graduate degree, after all. Not enough reason to go back to school on its own, but there seemed to be a correlation between the roles I wanted and an advanced degree.

During this time, I also learned another thing about myself. I had signed up to take all of these online classes, but I never took them. I might start watching a lecture or two but never finish.

Why?

I’ve come to learn that for me, I need rigorous structure. I need some skin in the game. I need something to keep me pushing through when the content got hard or I got distracted by some other new shiny course to take.

Putting the pieces together, I recognized that I hadn’t really fulfilled my desire to learn as much as I wanted. I wasn’t growing in the way I wanted to grow in my work. And I recognized that the roles I wanted to move into were employing people with advanced degrees. It made sense.

It was time to go back.

The Preparation

Image for post
Image for post
Photo by Green Chameleon on Unsplash

Once I decided I did, in fact, want to go back to school, I had a lot of other factors to figure out. Where would I go? How would I pay for it? Would I work at the same time? Would my girlfriend break up with me? Spoiler alert — we didn’t break up; we have been married for almost a year now :)

The first thing was to figure out where I would go. After a lot of research, I settled on three different programs:

  • NC State University (local to me).
  • Carnegie Mellon (a long shot).
  • Portland State University (where my girlfriend was at the time).

They each had different cost structures too. NC State was the cheapest because I was local while Carnegie was the highest due to out of state tuition, and it being one of the best programs in the country. Portland was in the middle.

I then needed to prepare and take the Graduate Record Examinations or GRE. Man — that was a rough test. I would prepare nearly every morning from around 7:30 to 8:30 before work, and then usually a three to four-hour stretch on Saturdays. I would also usually do a two-hour session on Sundays. I wound up having to take the test twice but got scores I was happy with.

Once I got the scores I liked, I worked on an application essay, got letters of recommendation from my manager, the director of software at my company, and an old professor — a BIG thank you to them!

I had everything I needed. It was time to apply.

The Decision Point

This is the part I think most people struggle with my story on. Why would you want to do that? More work!?

Put simply — money. I needed a job. I had also just finished paying back my undergraduate student loans — I didn’t want to get new ones.

Additionally, I was gearing up to get married (my girlfriend had moved back to Raleigh shortly after I took the GRE). I would need something more than a minimum wage job or a student job.

My plan was simple: apply to the local program, and if I got in, I would talk to my workplace about how to make it work. If it became clear that my employer was not interested in working it out, I would apply to my dream program at some other time. GRE scores are valid for five years, so I would just have that plan in my back pocket.

Getting Accepted and Setting Expectations

While it is a bit of a stereotype, many software engineers are not good with people. Myself included. I am either way to intense and technical, or would rather not speak at all. How was I going to discuss the idea of going to school part-time and reducing my hours on the job? And were my co-workers going to hate me?

This is where I was glad I had practiced honesty throughout the whole process. As I mentioned at the beginning of this story, I was discussing the idea of going back to school with people already. My manager, my immediate team, and even a People Services team member, knew it was something I was working towards. This meant that the news of me getting accepted wasn’t a blind spot or a surprise. It just meant that I was serious. It was time to shake out the details.

What I did was lay out some possible options with my employer of how I could work and study simultaneously. I outlined the program’s length, provided links to the curriculum, set expectations on current and future costs, etc. I discussed specific classes I hoped to take directly correlated with the work I was already doing as a software engineer.

After a few rounds of negotiation, we reached an agreement! I was going back to school.

Image for post
Image for post
Me upon graduating!

So… Why Did I Get My Masters Again?

To summarize it briefly, I’ll put it in bulleted form.

  • I had made it a goal of mine to get my masters degree before I ever started undergraduate
  • As a career software engineer, I realized I hadn’t scratched the itch to learn computers as deeply as I wanted
  • To learn at my best, I needed rigorous structure and deadlines
  • As I took inventory of who was employed in the roles I wanted to have, many of them had advanced degrees
  • I was able to land in a unique situation that allowed me to earn my degree without sacrificing industry experience

The next question, of course, is this: “Was it worth it?”

I’ll answer that in another post soon. If you don’t want to miss it, follow me on Twitter or Medium or whatever platform you prefer. I’ll make sure you know when it’s up :)

Happy coding!

Originally published at https://dangoslen.me.

The Startup

Medium's largest active publication, followed by +771K people. Follow to join our community.

Dan Goslen

Written by

Jesus follower | husband | IJM advocate | software engineer. I share tips and tools for building great software as a team.

The Startup

Medium's largest active publication, followed by +771K people. Follow to join our community.

Dan Goslen

Written by

Jesus follower | husband | IJM advocate | software engineer. I share tips and tools for building great software as a team.

The Startup

Medium's largest active publication, followed by +771K people. Follow to join our community.

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store