Engineering Science and Robotics: my critique

Engineering Science and Robotics: my critique

In 2020, I began the first year of my undergraduate at the University of Toronto's Engineering Science program, in the Robotics Option. At the time of writing this post, I'm just about 80% of the way through my degree, and have had a chance to choose my specialization, go through the job-searching process and make use of what I've learned in class in a work environment. I'm expecting to graduate in 2025 after four years of coursework and a year of co-op. This post summarizes some of the things I found to be most useful, painful, and sometimes mildly enjoyable.
Please keep in mind this is just one person's experience and that I'm trying to boil down years of class into a reasonbly sized post so not all aspects of student life will be represented equally in this post. I'll also continue to update this post until my graduation to keep this blog up to date.

Engineering Science: Just as Advertised...?

When applying to Universities as a High School senior and doing some research on each program, I found that most of the reviews of Engineering Science seemed to have a common theme: "you will suffer, but you will not suffer alone, and that almost makes it bearable". For anyone who stumbled across this post looking specifically to see how I felt about this widely repeated statement about my program, I can wholeheartedly agree with it. To someone who has not attended a university before, I would describe it as the equivalent of having the hardest course I ever took in High School but six of them at once every single term for four years. I had a pretty hard time. That having been said though, the comraderie was also as advertised, and I learned a lot from my peers, especially in my first couple years, and made some close friends along the way.
So for anyone looking just for a "how badly did you suffer" section, there you have it. In this sense, the program was largely as advertised. I chose the program because I wanted to be challenged and I certainly got what I asked for. I even had fun from time to time. To prove it, here's a photo of me and my friend Derek clearly enjoying ourselves at our Robotics lab.
I actually enjoyed myself I promise

Being "Multi-disciplinary"

One of the things that the faculty never fails to mention when talking about EngSci is just how "multi-disciplinary" the program is. One of the unique features of the Engineering Science program is that students get not one, but two years of general engineering courses before they are required to specialize, while most other University Engineering programs offer at most one year of general coursework before a specialization is required. After having completed those two years pre-specialization, I must admit I was left with some very mixed feelings about the program's structure.
Since the first two years of EngSci have practically the exact same courses for all students regardless of whether they'd like to choose the Biomedical, Physics, or Electrical options, there is necessarily a great deal of breadth and content in the prescribed courseload for the first couple years. In my first year alone, I learned how to make sure my bridge would not fail in a Civil Engineering course, took four separate mathematics principles courses, and learned how to write C code.
To it's credit, the program does do what it claims to do - three years in, I do feel as though most of the content that I learned was useful in some way or another to the work I wanted to do, but there are certainly courses I wouldn't mind being taken out of the curriculum entirely (I will not name any). It also gave me time to get a better idea of what each specialization would look like before making a decision - I'm certain that if I was required to choose a specialization after just one year, I would not be in Robotics. So the two general years did indeed offer some of the benefits that are often highlighted by the department.
However, for someone who is certain that they know exactly what specialization they'd like to do, I'm not sure I would recommend the EngSci program. For most specializations available through the Engineering Science program, there are other schools that offer engineering programs of similar disciplines that don't have two years of general curriculum, meaning you'll likely be saving yourself time and money. So really, while I think I didn't really mind the multi-disciplinary element of the Engineering Science program, I wouldn't recommend it for everyone.

Regarding Robotics

In my third year of class, I was finally able to specialize and I chose the Robotics option. My thought process for choosing my specialization was rather simple. I went into the program eyeing the Aerospace option, but then realized I am not an American citizen and therefore would likely not be able to work on rockets as I had hoped when I was little. I decided robots were the next coolest thing that didn't require an American citizenship status and settled on that.
While there is some truth to that joke, I did have very high hopes for the Robotics option going in, and it devliered exactly what I was expecting: courses that touched on all of the technical aspects involved in designing a robot as a coherent system. From the dynamics of robot motion to the electronics that make the move and the software that makes it move in a rational manner, it was all included in the Robotics program. In a lot of ways, choosing Robotics as my EngSci option meant that despite now having specialized, there was still a great degree of breadth in my coursework. Regardless, even that minor narrowing of the scope of courses I would take made my time notably more enjoyable.
But again, I found that breadth did not come without its pitfalls. The problem with designing a major focused on teaching students to be able to design each aspect of a robotic system and to design for interoperability of the various elements within a system is that prospective employers look for candidates that are proficient in a small subset of the skills taught rather than candidates that are mediocre in all of them. It also just happens that the University of Toronto's PEY co-op program consists of a single 12-16 month long co-op term starting shortly after the end of our third year. The coursework in the third year of Robotics gives some exposure to the mechanical, electrical, and high/low-level software skills required to design a robot from top to bottom. By the end of the third year, it would have taken a truly exceptional student, even by EngSci standards, to be proficient in three of those four skills, much less all four. Employers seem to be aware of this, and this is reflected in the internship opportunities available to undergraduate students.
Most robotics students looking at the job market came to the same realization that I did, and realized that we needed to, at least for the time being, choose one or two of those skills and get really good at them in order to land an internship. In my case, I decided I enjoyed the algorithms/programming element of my coursework the most, and looked for jobs in software that had something to do with robotics, and ended up landing myself a software engineering position programming 3D printer working with both abstract geometric algorithms and OS-level firmware stacks.
However, it took no small effort from my end to land that internship. In the few months between my realization and my interview with my eventual co-op employer, I learned C++ on my own (which I hadn't touched to that point), joined a self-driving car design team, and submitted dozens of applications, all while trying to maintain a good GPA taking the prescribed six courses per term. In all honesty, it was pretty tough, and without a concerted effort on my part to develop one specific skil, I highly doubt that the curriculum of the Robtics program alone would have sufficiently equipped me to take part in a meaningful internship by the end of my third year.

Conclusion

The point of the post was not to tell the reader whether EngSci was good or bad, or whether or not any incoming students should choose to apply to the program or not. In my experience, the program, like any other, has its pros and its cons, and I'm just providing my thoughts on the program. If I were to make one final comment about my experience, I would say that the Engingeering Science program, is just like any other University program in the sense that the effort you put in to your education determines what you get out of the program, but that it is unique in how much effort the program demands that you put into it.