education
Coursework
year 12021 / 2211 courses
Common first year. Everyone in engineering takes the same thing, which is how you find out what you actually like.
- Programming Fundamentals for EngineersENGSCI 1036A
The first real programming course. Variables, loops, functions, and the point where code stopped being mysterious.
- Foundations of Engineering PracticeENGSCI 1050
Design process, technical drawing, and a term-long team project with a client who wanted something specific.
- Business for EngineersBUSINESS 1299E
A full-year introduction to accounting, finance and strategy, aimed at people who would rather be building things.
- Calculus for Engineers INMM 1412A
Limits, derivatives and the mechanics of single-variable calculus.
- Calculus for Engineers IINMM 1414B
Integration, series and differential equations, applied to physical systems throughout.
- Linear Algebra and Numerical AnalysisNMM 1411A
Matrices, vector spaces and the numerical methods that make them tractable on a computer.
- Physics for Engineering Students IPHYSICS 1401A
Classical mechanics: forces, energy, momentum and rotational motion.
- Physics for Engineering Students IIPHYSICS 1402B
Electricity, magnetism and waves, with the circuit work that later courses assume you have.
- Properties of MaterialsENGSCI 1021B
Why materials fail, and how atomic structure explains the way something behaves under load.
- Engineering StaticsENGSCI 1022Y
Force balance in structures that are not going anywhere. Free-body diagrams, endlessly.
- Discovering Chemical EnergeticsCHEM 1302B
Thermodynamics and reaction energy from a chemistry angle.
Summer 2022: first co-op term, at The Buckmaster Institute in Vancouver.
year 22022 / 2312 courses
Software engineering proper starts. This is the year the degree stopped being general and started being a specialty.
- Algorithms and Data StructuresSE 2205A
Trees, graphs, hashing and sorting, plus the complexity analysis to argue about which one to reach for.
- Software ConstructionSE 2250B
Writing code meant to survive contact with other people: interfaces, testing, version control, code review.
- Software DesignSE 2203B
Design patterns and object-oriented modelling, taught through refactoring things that were built badly on purpose.
- Scripting Programming LanguagesSE 2202A
Dynamic languages and the automation you can get away with when you are not fighting a type system.
- Discrete Structures for EngineeringMATH 2151A
Logic, sets, combinatorics and proof technique. The mathematical grammar under everything in computing.
- Applied Probability and StatisticsSTATS 2141A
Distributions, estimation and hypothesis testing, which is where the machine learning courses later start from.
- Digital Logic SystemsECE 2277A
Gates, flip-flops and state machines. Building a processor from the bottom up.
- Introduction to Electrical EngineeringECE 2238B
Circuit analysis, from Ohm's law through to op-amps.
- Accounting and Business AnalysisBUSINESS 2257
Reading financial statements well enough to work out what a company is actually doing.
- Applied Mathematics for Engineers IINMM 2270A
Multivariable calculus and vector fields.
- Applied Mathematics IIINMM 2276B
Fourier analysis, transforms and partial differential equations.
- Global Violence and InjusticePOLISCI 2141B
An elective on conflict and its causes, and a welcome break from problem sets.
Summer 2023: second co-op term, at Elim Solutions in Markham.
year 32023 / 2410 courses
HBA1 at Ivey. Ten mandatory courses, taught almost entirely through the case method, with a cohort you sit with all day.
- StrategyBUSINESS 3300K
Where a company's advantage actually comes from, and how quickly it erodes when nobody is watching.
- MarketingBUSINESS 3301K
Segmentation, positioning and pricing, argued out over cases where the obvious answer is usually wrong.
- CommunicationsBUSINESS 3302K
Structuring an argument for people who will decide in the first thirty seconds.
- FinanceBUSINESS 3303K
Valuation, capital structure and the cost of money.
- OperationsBUSINESS 3304K
Process design, capacity and queueing. The closest an Ivey course gets to an engineering one.
- Leading People in OrganizationsBUSINESS 3311K
Team dynamics, motivation and the reasons capable groups still make poor decisions.
- Decision Making with AnalyticsBUSINESS 3316K
Regression, simulation and decision modelling aimed at managers rather than statisticians.
- Accounting and Financial FundamentalsBUSINESS 3321K
Managerial accounting: cost structure, margins and what the numbers hide.
- Leveraging Information TechnologyBUSINESS 3322K
Technology strategy from the buyer's chair, which reads differently once you have been the one building it.
- Learning Through ActionBUSINESS 3323K
A combination of projects, ranging from case competitions to podcasts, and even a TikTok.
Summer 2024: third co-op term, at Bond Brand Loyalty in Toronto.
year 42024 / 2514 courses
The heaviest year: third-year software engineering stacked on top of the first half of HBA2.
- Cloud ComputingSE 4455B
Distributed systems, containers and managed services, with the cost and failure tradeoffs of each.
- Database Management SystemsSE 3309A
Relational modelling, normalization, indexing and query planning. Why a query is slow, specifically.
- Operating SystemsSE 3313B
Processes, threads, scheduling and memory. Concurrency bugs you have to reproduce to believe.
- Web TechnologiesSE 3316A
Full-stack development end to end: HTTP, REST, client frameworks and the state that leaks between them.
- Computer Networks ApplicationsSE 3314B
Building on top of the stack: sockets, protocols and peer-to-peer designs.
- NetworkingECE 4436A
The layers underneath: routing, congestion control and what TCP is doing on your behalf.
- Software Engineering Design ISE 3350B
The first half of a two-year capstone: scoping a real system and defending the architecture.
- Software Requirements and AnalysisSE 3352A
Getting a specification out of people who cannot yet describe what they want.
- Software Project and Process ManagementSE 3351A
Estimation, risk and process, and why software schedules slip in the same ways every time.
- Theoretical Foundations of Software EngineeringSE 3310A
Automata, formal languages and computability. What a machine cannot be asked to do.
- Human-Computer Interface DesignSE 3353B
Interface design and usability testing, watching people fail to use things you thought were obvious.
- Microprocessors and MicrocomputersECE 3375B
Embedded C on bare metal: interrupts, registers and no operating system to catch you.
- Quantum ComputationPHYSICS 2300B
Qubits, superposition and the handful of algorithms where quantum hardware would genuinely change the answer.
- Ivey Field ProjectBUSINESS 4569
A term-long consulting engagement with an outside client, delivered as a real recommendation.
Summer 2025: fourth co-op term, at Amazon Web Services in Toronto.
year 52025 / 268 courses
Capstone and HBA2 electives in the fall, then an exchange term in the Netherlands to finish.
- Software Engineering Design IISE 4450
The capstone: News4U, a full-stack AI news platform with retrieval over Postgres and pgvector.
- Introduction to Machine LearningDATASCI 3000A
Supervised and unsupervised methods from the ground up, including the evaluation habits that stop you fooling yourself.
- Information SecuritySE 4472A
Cryptography, authentication and threat modelling, taught partly by breaking things.
- Software Testing and MaintenanceSE 4452A
Test design, coverage and the economics of maintaining code long after the original team has moved on.
- Global Macroeconomics for ManagersBUSINESS 4505A
Rates, currencies and trade, framed as inputs to a business decision rather than as theory.
- Managerial AccountingBUSINESS 4624A
Costing and internal reporting for people who have to act on the numbers.
- Sustainable FinanceBUSINESS 4588A
How climate and social risk are priced, and where the disclosure around them falls short.
- The Ethical EngineerELI 4110F
Professional responsibility and the cases where the technically correct answer is not the right one.
exchangeJanuary to April 20264 courses
Maastricht University, School of Business and Economics. Four courses, 26 ECTS, taught in Maastricht's problem-based format: small groups, no lectures to hide in.
- Institutional EconomicsEBC 2015
Why rules, property rights and enforcement explain more about how economies perform than resources do.
- Corporate GovernanceEBC 2020
Boards, ownership structure and the incentives that decide who a company is actually run for.
- International BusinessEBC 2027
Entry strategy and operating across borders, with the institutional differences that break a copied playbook.
- International Competition PolicyEBC 2093
Antitrust and merger control across jurisdictions, and the arguments regulators find persuasive.
Awards
- 2021Western Scholarship of Distinction
- 2024RBC Scholarship in Engineering
- 2024London So Family Award
- 2025London So Family Award
- 2025Western Admission Scholarship