A person (30-35 y/o) has an M.A. in History and drives Uber. Now, he wants to study M.Sc. in CS/CSE in Canada for better employment.

What/how would be the pathway to accomplish that in the shortest possible time period in Canada?

Can/Must he complete/appear for General Education Development (GED), Advanced Placement (AP), International Baccalaureate (IB), etc., and then enroll in B.Sc. in CS/CSE?

Or, can he complete some of the courses from virtual online schools and then apply for admission to the University?

Or, Can he just appear for Graduate Record Examination (GRE) test, and directly start M.Sc. in CS/CSE?

Or, Can he enroll in specialized programs and then transfer to M.Sc. in CS/CSE programs?

  • 2
    Is BA not an option?
    – henning
    May 12, 2021 at 17:07
  • 6
    @user366312 I think henning means that going straight into an MSc may require some previous knowledge (unless it's specially designed for people coming from non-quantitative background) which is better catered for by a BSc in the above topics. May 12, 2021 at 17:11
  • 5
    Do Canadian schools offer "post-bac" study, where you can fill in undergrad coursework without matriculating towards a second degree? It's designed for situations like you describe, but usually towards med school or other pre-professional programs. May 12, 2021 at 18:00
  • 8
    harvard has an excellent free online intro to cs class -- cs50. Before you do anything, I would work through the course as if you were a student and see how it goes. Also if you just are looking for a good job there's a lot more paths than just a cs MS. Data analytics, general IT, or programming / dev work can also get you there and you might get in the door just by doing a bootcamp. Or a cert through a 2 year program for lower level IT work. Just learning how to do basic cloud computing infrastructure in aws/azure might be enough for some jobs.
    – eps
    May 12, 2021 at 18:46
  • 4
    "Coding bootcamps" are designed for people like you. I've no idea if they work. May 13, 2021 at 5:11

4 Answers 4


I would not try to go for a masters right away.

You have two options.

The "safe" but time-consuming route, that presumably you don't want to do, is to get another bachelor's degree in CS. I bet you don't need a masters to get a good job, but it will be much easier for you to get into a masters program, and you will do better, if you have the right background.

The "quick" way is to teach yourself the things you need to know for the job you wnat. If you can afford it, do a bootcamp. Take online courses like those on coursera. Take on a project where you code something yourself. Aim to get certifications in some skills that apply to the field you want to get into. Apply for jobs as you gain experience, and update your resume as you add more projects and courses and certifications. Eventually something will hit. You may find yourself in a job that is relatively low paying and low-level, but take it and use it to build up your experience and credibility so you can either rise up in the company or apply for a better position.


This might be better asked on the workplace stack exchange, and as a somewhat broader question. If you have a 30-35 year-old with an M.A. in History who wants to switch to tech to improve their job prospects, then "get an M.Sc. in CS" is trying to jump a lot of rungs all at once. You'd probably be better served looking into certifications and trying to get into tech that way. You can get some fairly solid certs within 6-12 months (faster if you're naturally good at the subject) and those certs can absolutely get you better employment than "Starbucks barista who drives Uber". Once you get into the field, further incremental development is significantly easier.


I admire the enthusiasm, that's for sure. The practicality of the situation, well that's different, but have a go! If the goal is to work in IT, which it sounds like it is, I'd skip the M.Sc. altogether and focus on, for example, software development, system administration, IAAS via AWS or Azure, network administration, whatever. The shortest path, as you ask for, requires laser focus at this point. Best of luck to all involved!


There are numerous avenues in IT. Two roles that might not be obvious, but perhaps worth consideration for someone with a nontechnical background, are business analyst and scrum master. These tend to require broader skills, maybe with more emphasis on interpersonal skills, than others.


There are probably two issues they would encounter:

  • Competition for limited enrollment. They wouldn't be very competitive compared with students with a B.Sc. in computer science or related field. They can probably get around this issue by applying to lower-ranked schools where there are sufficient open seats for qualified applicants. They should probably expect to have to pay for the M.Sc. tuition; competition for funded M.Sc. positions is even harsher.
  • Qualification for enrollment. M.Sc. programs will expect students to have an understanding of undergraduate computer science, including years of programming experience but also extending to required upper-division classes like operating systems, formal algorithms, etc. They have to convince the admissions committee that they are prepared for graduate classes from day 1, which might require taking undergraduate classes as a non-degree student.
  • Is going to community college an option?
    – user366312
    May 12, 2021 at 16:56
  • @user366312 certainly, but not all community colleges offer the upper-division computer science undergraduate classes that might be expected of graduate students.
    – Elodin
    May 12, 2021 at 16:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .