dmitry | Feb. 6, 2021, 6:06 p.m.
From my vantage point, software engineering, computer science and computer programming seem to be the broad knowledge areas du jour (if a day in the case lasts multiple years). Even when I was searching for my post-grad job, I was quite frankly jealous of the jobs that seemed available to the individuals who possessed those degrees.
Since I finding a job that was related to my university degree, it seems like computer science is the degree of choice for some of the most interesting fields like data science and cybersecurity. My degree had minimal programming and for some time I have felt that the lack of computer science fundamentals has inhibited my career growth and personal goals.
Now there are lots of ways to learn computer science fundamentals; MOOCs, Khan Academy, Youtube videos, Teach Yourself Computer Science etc. However, I find that any such efforts will be hampered by what Scott Young (of the MIT Challenge), describes as the lack of an acceptable signalling mechanism for the job market. It is a basic assumption that any highly paid jobs in development, data science or cybersecurity require continuing learning. However, in a job market where you compete with appropriate degree holders, it seems to me that in the era of automated candidate ranking systems, candidates with alternative academic backgrounds will have to rely on a portion of luck and networking. And then, most of such candidates will still have to send out many job applications and likely have to start their career pivots at second or third tier positions (where the tier can be judged by whatever criteria is important to you). I've also personally become increasingly more enamoured of strengthening my academic credentials in a recognized manner in a field that genuinely interest me.
I have considered several options that could integrate into my work schedule and not require me to move somewhere just to attend classes in-person. There are universities in my current location, but the tuition costs are on the higher end. The other issue is that universities require that students completing a second undergrad degree complete a minimum number of 3-credit courses (this tends to be 20) at their institution. This minimum number can exceeds the actual number of computer science courses that would still be required to complete for a major in computer science. I'm not particularly eager to complete university courses just for the sake it (breadth and diversity requirements are definite disadvantage for someone who has already completed a degree).
Are there any suitable online options? I did not consider any coding bootcamps (I personally believe these focus much more on front-end development that interests me the least) but focused specifically post-secondary institutions. There are a good number of options in the US, but all of them are quite costly yet again. The one glowing exception is the Online Masters of Science in Computer Science (OMSCS) that is offered by Georgia tech University. It provides good value for cost (10 courses required at a cost USD$1000 each), has many course options, has a vibrant and extensive community (see their Reddit forum and a dedicated review website, not to mention numerous websites of individuals who completed the OMSCS). The degree also seems to be valued by large employers in the US based on anecdotal evidence. However, this is an uncompromising degree that requires a significant time investment with a sink or swim mentality. Would a person with a minimal academic computer science background succeed (and not merely pass) without being buried under an avalanche of projects, technical difficulties and personal doubts?
Canada offers three potential options; Thompson Rivers University OL Computing Science degree (undergrad), Athabasca University Computing and Information Systems degree (undergrad) and the Wilfrid Laurier University Online Master in Computer Science. All three options are not the cheapest per se, but are fully online, with TRU and Athabasca allowing you to take computer science courses in your preferred order at your own pace (without even being admitted as a full-time student). In addition, none of these degrees seem to be particularly prestigious or well-regarded by employers (Athabasca University's degree option in particular has garnered some critical reviews as to its academic rigor).
Thinking outside the box, I realize that in our current times, universities are conducting all their computer science courses online (albeit synchronously, meaning you have to be available at certain times). There is one Canadian university that charges outlier-like low levels of tuition for Canadians, Memorial University of Newfoundland, which also happens to be my alma mater (for the good reason that it also offered excellent tuition for international students and has engineering programs that are based around a mandatory co-op program). They do offer a computer science degree (with an internship option), will recognize all my previous credits (including my transfer credits from my A Level courses) and only require that students completing a second degree with MUN complete a further 10 courses with the university itself. Very promising indeed!
Further investigation lead to a MUN Computer Science Discord server, which allowed me to speak to current students themselves and ask for their feedback. MUN is also pretty liberal in accepting credits from other universities (such as Thompson Rivers Uni) at a low evaluation cost and allowing you to challenge courses. I do believe that with a little bit of planning, I would be able to complete the degree in three semesters (with only one actually needing my presence on MUN's campus).
Stay tuned to see how I progress in this endeavour!
P.S. People usually find it hard to break into a new industry without prior experience, but students can benefit uniquely from co-op work terms that have less competition and fewer starting competence expectations for gain a foothold in companies and industries of interest.
I find answers for questions nobody else has time to answer and to help me remember, I write them dowm here!