You are a high school student who's been interested in computer science (CS), whether it is on a very deep level or just because it is a buzzword you have heard for a while. Either way, you are good with technology, inclined to academics, and know that there’s excellent job opportunities with this career path.
You are a parent whose child fits the bill above. However, you know that deciding to study at a university (and incurring the costs that come with it) is no small decision. Further, you have heard stories of “bad” schools and just want the best path for your child going forward. This worry rings especially true during a global pandemic, looking forward to a hopeful post-Covid society.
If either of these descriptions fits you in whole or in part, then this article will hopefully give you some perspective on one such school choice, and the things you may want to consider.
Why study at University of Toronto?
In terms of the statistics, the University of Toronto (UofT) and its various campuses, are rated very highly in world rankings. As of writing this article, University of Toronto is ranked 26th on the QS World University Rankings for 2022. With UTM being a satellite campus of University of Toronto, a UTM student can enjoy many of the same benefits as someone enrolled at the St. George (downtown) campus.
The prestige of the University of Toronto can carry a lot of weight in applications, resumes, and other situations where holding a university degree is important. However, this prestige is not just for show. There are many benefits from being a member of a huge academic institution like U of T. You receive access to many academic resources, including the entire U of T library system. University of Toronto students (and alumni) also can avail of many benefits, like discounts for commuting, free admission to Toronto attractions, and the International Student Identity Card.
Further, you can also enroll in the same courses as students in the main campus. Many of the same courses are also offered at UTM, or you can commute to the downtown campus for any specific course only available downtown (which are usually specialized upper year courses). For the latter, a shuttle bus between St George and UTM is available, and is free for UTM students.
Getting into Computer Science at UT
First, applying and getting into the University of Toronto is not the hardest part. For someone in an Ontario high school, you should be aiming for an approximate grade point average of “low to mid 80s (based on six Grade 12 "U" or "M" courses, including English (ENG4U)”. For international students you can find similar criteria to your curriculum here (https://www.utm.utoronto.ca/future-students/programs/computer-science-mathematics-statistics). These grades are very achievable and are not restricted in subject besides the mandatory English, so taking the Grade 12 courses you are best in will help with building a strong application.
In terms of what high school courses to choose, even though math nor computer science courses are needed for admission, it is highly recommended for you to take it in preparation for the content to come. Getting ahead in your studies is always a big advantage, especially in competitive academic situations. Taking the relevant high school courses will keep you aloft in university and taking private lessons or other extracurricular courses before high school will help in the aim for a higher grade.
Succeeding at Computer Science in UT
Further, the Computer Science program is hard. It is important to be upfront with it so that we can manage expectations. Once you receive your acceptance into the Computer Science stream, you are not technically a CS Major. You still need to apply to the CS Program of Study (POSt), which has many requirements. As of May 2021, the minimum to gain entry into the Computer Science Major is “80 percent in CSC148H5 [Introduction to Computer Science], 73 percent in MAT102H5 [Intro to Mathematical Proofs, and a CGPA [Cumulative Grade Point Average] of 3.0” (from the UTM CS Program Overview), as well as a credit in first-year calculus and a writing course. You can find more in-depth info at the Academic Calendar linked at the end of the article. Although there are a limited number of spots each year, most, if not all, students who meet the minimum requirements make it into the CS POSt.
Despite these high expectations, making the requirements is doable for a student who is studious, and puts in the work for project-based assignments, especially in the CS courses. At this point, if you have made it into the CS stream in university, you have the academic potential to succeed in the coursework. For many students, the shift in pacing, workload, and environment can be a major shock, and may also contribute to poorer performance. Nevertheless, UTM has many resources to help with handling coursework, balancing a healthy student lifestyle, and managing your time. These include things like the gym (which will hopefully open post-Covid), student-led activities (both social and academic), and academic help. In terms of academic help, there are many organizations and activities that one can avail of, like the Academic Skills Centre (https://www.utm.utoronto.ca/asc/), which provides 1-on-1 help in skills such as Essay writing and Math skills, and the Facilitated Study Groups, which is a drop-in study session led by an experienced leader (usually a senior student).
It is also very important to note that, to receive your degree, you need either 1 Specialist (an in-depth program), or 2 majors, or 1 major and 2 minors. The CS Specialist program is 12-12.5 credits, while the CS Major
For the CS Specialist at UTM, the required courses you might take are (by year level):
- CSC108H5: Introduction to Computer Programming
- CSC148H5: Introduction to Computer Science
- MAT102H5: Mathematical Proofs
- (MAT135H5 & MAT136H5)/MAT137Y5: Calculus
- ISP100H5: Writing for University and Beyond
- CSC207H5: Software Design
- CSC236H5: Introduction to the Theory of Computation
- CSC209H5: Software Tools and Systems Programming
- CSC258H5: Computer Organization
- CSC263H5: Data Structures and Analysis
- MAT223H5: Linear Algebra I or MAT240H5: Algebra I
- MAT232H5: Calculus of Several Variables
- STA256H5: Probability and Statistics I
- CSC290H5: Communication Skills for Computer Scientists
- CSC343H5: Introduction to Databases
- CSC363H5: Computational Complexity and Computability
- CSC369H5: Operating Systems
- CSC373H5: Algorithm Design and Analysis
Note: any Five 3rd/4th year CS courses can be completed at this point, including:
- CSC301H5: Introduction to Software Engineering
- CSC309H5: Programming on the Web
- CSC311H5: Introduction to Machine Learning
- CSC347H5: Introduction to Information Security
- CSC375H5: Algorithmic Intelligence in Robotics
- CSC376H5: Fundamentals of Robotics
- CSC384H5: Introduction to Artificial Intelligence
- And many more
- CSC404H5: Video Game Design
- CSC413H5: Neural Networks and Deep Learning
- CSC420H5: Introduction to Image Understanding
- CSC428H5: Human-Computer Interaction
- CSC448H5: Formal Languages and Automata
- CSC477H5: Introduction to Mobile Robotics
- And many more
Of course, the order of study would depend on certain course prerequisites, and if you wanted to get ahead in a specific material or fast track to a specific course. The CS Major has similar but slightly lowered course requirements (like only four 3rd/4th year courses needed), and the CS minor has even less requirements compared to the two.
It is important to note that the CS Minor does not have any application requirements and can be a great complement to other majors. Some other majors that overlap or complement well with the CS program include:
- Applied Statistics
- Communication, Culture Information, and Technology
- Geographical Information Systems (GIS)
- Professional Writing and Communication
(List found on the UTM CS Program Overview)
Many Computer Scientists are not pure software developers or academic researchers, so complementing your CS skills with another discipline is a great idea to open yourself to more opportunities.
For UTM students, they can take a Professional Experience Year (PEY) in which they do a 12 to 16-month internship at a company partnered with University of Toronto. This program is open to CS students after their 2nd and 3rd years of study but can only be taken once during a student’s time at UofT. Although not for course credit, this exposes students to the industry’s job application process and to the inner workings of employment in many CS related positions. Students in the PEY program have access to an exclusive job board where only UofT students can apply, but the student can also find other opportunities if the position fits the PEY requirements. This also a great opportunity to earn during your university years, as well as experience that is invaluable on a resume and for future opportunities.
Many students receive return offers from the company they intern at, at a rate or level that they would not have previously been able to gain straight out of graduation! Even if one does not return to that company, the networking and connections made during that internship many times can lead to prospective jobs in the future. Some skills can only be developed on the job, like dealing with external clients or supporting code that has been established for many years. For these reasons, the PEY co-op program is also a great reason to study at UTM.
Overall, studying Computer Science at UTM is both challenging and rewarding. Keeping up with your studies and CS skills is especially important and can start even before you start applying to universities. Once you get into the program, the work does not stop. However, once you have earned your degree, you are more than prepared to launch your career in any industry or academic pursuits post-graduation!
At Geekedu, we offer coding classes for kids, and many of our highly qualified instructors graduated from Computer Science major from University of Toronto. Book a free trial class today!
Academic Calendar: https://utm.calendar.utoronto.ca/section/Computer-Science
UTM CS Program Overview: https://www.utm.utoronto.ca/math-cs-stats/current-students/computer-science