What made you choose to apply/enroll in the UW Bothell MS in Computer Science and Software Engineering?
I chose the UW Bothell MS in Computer Science and Software Engineering program for a variety of reasons. At the time, I was dissatisfied with my current job/position and hadn't had much luck with management, in terms of trying to negotiate a path out of quality engineering and transitioning over to more of a development role. At the same time, I worked for a great company that had an outstanding tuition reimbursement program, so I thought I'd at least help develop my career academically, if I wasn't able to develop professionally.
I had looked into the University of Washington's Professional Master's Program (PMP) in Computer Science & Engineering, but I was still pretty young in my professional career. So, it didn't seem like it would have been a good fit, at the time—the advisors there recommended waiting until I had at least five years of professional experience under my belt. Fortuitously, I received an e-mail from the UW Bothell, letting me know about their new MS in Computer Science and Software Engineering.
I had attended the UW Bothell for my undergraduate degree (BS in Computing and Software Systems). As an alum, I was familiar with the quality of instructors, staff and resources involved with the program. I also really loved the smaller class sizes and how accessible professors were on campus. So when I received that e-mail, it was just perfect timing; and after discussing things with my wife, I think I applied/enrolled the following week.
What were your most enjoyable classes?
I really enjoyed Parallel Programming for the Grid and Cloud and the Research Methodology course—odd, right?
Parallel and distributed computing is a topic that I really enjoy anyway, but the quality of the class, instruction, and the involvement of other students really helped to make it a memorable course. Not only were students taught the fundamentals, but they were also responsible for applying concepts taught in the course within the context of programming assignments. Students were also expected to not only individually research and present an advanced topic related to parallel/distributed computing in the grid/cloud, but were expected to pick up the general ideas presented by other students. All of these aspects really helped to not only present and reinforce concepts in this field, but to get students interested in other topics and to become a little familiar with the diaspora of topics in this area that have come as a result of progress/research over the years.
I also have fond memories of the Research Methodology course, which is probably not one that many students would choose (hence, the "odd, right?" comment above). I remember most students approaching this course and the work involved with groans. This class dealt with topics more general to science and research, as a whole, instead of focusing in on minutiae related to computer science. There also weren't any programming assignments involved. So, I'm even a little surprised that it's one of the courses I remember—but, I do. I specifically remember Professor Erdly reminding us all that we were fundamentally scientists first, and as scientists, there were not only professional considerations that we'd need to adhere to in our careers, but there were moral and ethical considerations that should guide not only "what" we choose to work on, but "how" we choose to do the work we perform. I felt that this focus was useful early in our graduate education, though it was especially useful toward the end when we were designing experiments, analyzing results, and reaching/communicating conclusions.
What has been the most challenging part of being a student?
By far, the most challenging part of being a student was planning, designing, working through and completing a thesis. It's really hard to communicate the types of stress you go through during this process. I mean, it's a lot of work—that much is easy to understand—but, for me, it was also this incredibly long process that could have resulted in my own failure to complete several times. After all, somebody else could publish findings that either invalidated or made my own research obsolete at any moment between choosing a thesis, working on it, defending it and publishing. It's also difficult to explain how it feels to spend weeks upon weeks of late nights and weekends working on something that could fail through no fault of your own.
In addition to the stress of having aspects of the process be completely out of your hands, the work itself is significant. At one point, I remember looking at the list of professors on my review committee and I realized it consisted of former and current heads of the entire CSS department. These are serious people with limited time themselves, so not only are you concerned with wasting their limited time, but you're also keenly aware that you're not going to be able to pull anything over on them, you know? The research has to be impeccable, the writing has to be scientific, and the conclusion(s) reached need to be valid, defendable and backed by evidence. To top everything off, you will receive questions during your presentation. However, you may find that you've spent so much time focusing on this research topic that the hard part of responding is keeping your answers brief!
What has been the most rewarding part of being a student?
I'm sure a lot of people are going to mention the friends/colleagues they've met through the program, the knowledge they've gained as a result of their experience, or even just the personal changes they've gone through—changes to habits, views or ways of dealing with work/stress. I can definitely relate to these rewards from being a student, but I'm going to have to go with being published.
I would have said the graduate degree itself or the extra padding on my resume were the biggest rewards, but I still work at the same company. I was able to transition over to a development role at work and have seen some of the best annual reviews in my career over the past few years. But, I can't say with any degree of certainty that the raises and bonuses or promotions were related to my studies—at this point, it would be counterfactual (thanks for that term, Research Methodology course).
So, I'm going with being published. If you Google my name, one of the results is my thesis—it's out there, available for others to read and is a personally rewarding achievement. Having the hardbound copy of my thesis sent to me from the publisher was a special moment; academically, probably second to the feeling of having successfully defended my thesis.
Also, I do keep in contact with folks I've met through the program; I just tend to think of people as gifts, not rewards.
What advice do you have for future students?
Start getting to know your professors and their research areas early. You won't need to pick a thesis topic until later, but the earlier you can identify someone that you can work with the earlier you can begin working on forming a thesis. I recommend keeping the idea of a thesis in the back of your mind through your studies. After all, you're going to want to choose a topic that interests you, and it might not be something immediately obvious; if something catches your interest look into it and see if there's anything there you can use. It’s also important to remember what your professors are researching to know who you can converse with about your ideas.