university of waterloo

you might be wondering how i can take courses at the university of waterloo as a university of guelph student. the short answer is an lop (letter of permission), which lets you take a course elsewhere and receive transfer credit back at your home institution. people usually do this to make up a failed class or to satisfy a prerequisite that was not offered that term at their home university. but for me, i was purely taking it for interest and for fun while transferring a third/fourth year credits which counts towards my degree requirement.
summer 2025
i decided to take cs349: user interfaces for the summer term. i was going to do cs346: application development, but i did not realize it was not offered in summer terms, which was unfortunate because i paid $70 for nothing. this course was pretty structured and used modern languages like react, javascript, preact, tailwind ui, canvas ui and more. comparing this to guelph's cis2170: user interface design, guelph does not really focus on those and more theoretical as i heard it from my peers. the course is not too bad as i learnt a lot about
i attended a bunch of information sessions hosted by employers such as bloomberg, patreon, ontario teachers' pension plan and more. i find them pretty helpful as they had interns talking about their experience, recruiters sharing the process as well as exclusive hiring pool for those who attended the event. i ended up getting an oa from patreon but unfortunately was rejected.
aside from academics, since i am a uw student, hackthenorth applications opened and i used my uw student id, listed uw as my school, and ended up getting accepted. it was clutch since i was able to secure a job from there. i also joined uw intramurals 11v11, and we made it to the semifinals. we lost, but it was still a great start since we were a team of random people.

fall 2025

during waterloo tech week, i attended events like the google networking session, where i met some impressive people and ran into my cs449 ta (he gave me a 96, which was a win). i was a bit nervous going in alone, but once i recognized a few familiar faces from linkedin, i started conversations and the rest felt much easier. at the end of the week, i attended hackthenorth and lowkey did not really work on the project because i focused on workshops, networking events, and talking to sponsors such as ethglobal, rbc, td bank (job interview and got accepted), citadel, yc, shopify and many many more. i realized that winning the hackathon is not really my thing, and it is more beneficial for me to attend workshops and interact with sponsors since i can make meaningful connections.
in fall 2025, i ran intramurals again with few people from the summer team. we played 11s and 6s, and did a bit worse this time. in 11s we forfeited twice, which knocked us out, and in 6s we lost in the quarterfinals on pens.

anyway, back to this term. i ended up taking cs346: application development and cs449: human-computer interaction, where i joined teams and started building. cs346 feels like a full stack course, but we are doing it for mobile, using kotlin, java, typescript, supabase, and sql. on the other side, human-computer interaction (hci) is less about shipping code and more about understanding people: framing the problem, building figma prototypes, running user interviews, mapping task flows, and doing usability tests. it also pushes you to think about accessibility, feedback loops, and how small design decisions change user behavior. i finished strong with 92 and 96, so i am pretty satisfied with the term. unfortunately this might be my last one for a bit, since i am unsure when i will be graduating and which remaining courses i can take that do not have exams.
What I learned
- the right events are better than every event
- relationships matter more than hackathon rankings
- hci thinking improves how i build products
- small teams still go far with clear roles
- consistency beats intensity in a busy term