I recently completed my Master of Science in Computer Science. There were both good and bad experiences about graduate school while working full time, and I wanted to share them to help those who are considering taking that leap.
Before I do, I wanted to provide a little history on why I choose to pursue a graduate degree in Computer Science. My undergraduate and first graduate background is in Biomedical Engineering. As my emphasis was in signal processing, I was exposed to curriculum that focused on logic and coding. I enjoyed these classes the most. Therefore, I chose to get a more formal education in Computer Science when I moved to Kansas City in 2010.
Typically, I would start off a blog post with the good news first, but I don’t want to end with the bad and scare off folks who are on the fence of deciding whether or not to further their education. My intention is to provide some honest opinion and feedback that may save you from the bad aspects of a graduate program, rather than turning you off from taking a very beneficial and self-rewarding step.
My bad experiences are more complaints than anything else. Not all graduate students are full-time students and, in my experience, many professors don’t understand this. I remember countless “busy work” assignments that never helped me gain knowledge of the subject covered in class.
For example, students were assigned to find and read published paper and in turn write mandatory one-page reports. This was a weekly activity throughout the semester. These assignments would eat up my free time at home, and, to this day, I can’t quantify the value in any of the critiques that I wrote.
I mentioned free time in that last sentence. I will be the first to say that graduate school is a commitment and it requires sacrifices. I remember countless nights and weekends that I would have been rather doing anything else other than homework. As a tip to those considering this move, I would recommend researching the course structure and teaching methodology to make sure the course curriculum is synced up with your goals.
Needless to say, having a supportive work environment and spouse are a must. I was fortunate to have both, so thank you Keyhole and a shout out to my husband.
I was under the assumption that creativity and innovation are welcome in a higher education setting, but found that wasn’t always the case.
For example, I once solved a problem on an exam by applying an algorithm that was different than the way the professor used to solve the same problem. I was deducted points and when I went to sit down with the professor to understand why my approach was wrong, I was told “that is not the way I would solve the problem.” I could be wrong, but the best I could tell, I was punished for solving the problem in a creative, efficient way. The professor didn’t appreciate it, as it was a different way of getting to the answer. I swallowed my pride. I told myself to keep looking for ways to be creative and focus on learning rather than worrying about my grades.
Now for the good experiences about graduate school. Grad school helped me obtain a basic theoretical Computer Science background that I was lacking, as I came from a Biomedical Engineering program.
Furthermore, I really enjoyed the small-scale projects that helped me understand the lifecycle of a project holistically. Things like IT Project Management, business and system requirements, designing, coding, and testing were all part of the project. The small-scale projects helped me translate why and how things are structured in a real work setting.
At the same time, some of the topics like architecture cannot be fully understood in small projects. But the importance of architecture and good coding practice can be quantified into a large project. I experienced this first-hand as I was able to translate these qualities while at my full-time role as a Keyhole consultant. On the flip side, I was able to take things I was learning on work projects and apply them on school projects. I would say there was a good balance in applying the skills I learned between work and school projects, which furthered my learning.
In conclusion, I found graduate school was very beneficial for me.
As a suggestion for those considering this leap: research the curriculum and make sure it is in line with your learning objectives and expectations. I would also highly recommend you have real-world experience before starting graduate school, as I found that having the work experience helps you succeed in your graduate studies. Graduate school is a big commitment and you need to be mentally prepared for time commitment that it requires.
Keep learning; innovate, never become complacent, as a mind is a terrible thing to waste.
|Reference:||Graduate School: ”Do… Or Do Not. There Is No Try” – Yoda from our JCG partner Jinal Patel at the Keyhole Software blog.|
This guide will introduce you to the world of Software Architecture!
This 162 page guide will cover topics within the field of software architecture including: software architecture as a solution balancing the concerns of different stakeholders, quality assurance, methods to describe and evaluate architectures, the influence of architecture on reuse, and the life cycle of a system and its architecture. This guide concludes with a comparison between the professions of software architect and software engineer.