ECE 454Distributed Computing
- Units
- 0.50
- Faculty
- Engineering
When it runs
- F24
- W25
- S25
- F25
- W26
- S26
- F26
- W27
- S27
Ran in 3 of the last 7 terms. Winter 2027: not on the schedule. Spring 2027: schedule not out yet.
Principles of distributed computing; architectures and middleware; servers, processes, and virtualization; upper-layer network protocols, interprocess communication and remote procedure calling; concurrency, synchronization and distributed algorithms, dependable distributed systems and fault tolerance.
Prerequisites
- Complete all of the following
- Must have completed the following:
- ECE358 - Computer Networks (0.50)
- Must have completed at least 1 of the following:
- Students must be in level 4A
- Complete 1 of the following
- Enrolled in H-Software Engineering
- Enrolled in a BASc program
- Must have completed the following:
Antirequisites
Leads to
No course lists it as a requisite.
Reviewed on UW Flow
82% liked it20% easy90% useful
From 65 ratings and 17 comments on UW Flow. The most helpful comments, quoted as written, without names. Read them all on UW Flow.
All the concepts are really interesting. Distributed computing, functional programming, Hadoop, Spark. Not a lot of fundamental take aways.
Dec 2016 · didn’t like it · 1 found this helpfulOn UW FlowRemove this
Probably one of the most useful courses I have taken at Waterloo. I'm applying so much from here into my co-op jobs
Nov 2015 · liked it · 1 found this helpfulOn UW FlowRemove this
Bird
Aug 2026 · liked itOn UW FlowRemove this
Interesting labs, easy final, prof wasn't amazing.
Aug 2025 · liked itOn UW FlowRemove this
Tahsin Reza always corrects himself when lecturing. His lectures are incomprehensible.
May 2025 · didn’t like itOn UW FlowRemove this
Discussed on r/uwaterloo
80 posts and comments in 64 threads mention ECE 454, August 2014 to December 2024. Quoted word for word, newest first; each reply sits under the post and the comment that started its branch. Search r/uwaterloo for newer posts.
Spring 2024
Any courses that use spark/kafka/flink that are available to eng students? 4 points, 4 comments
u/intwhale: “ece 454 usually covers spark/kafka, though the latter was omitted this term for time reasons”
Has anyone taken ECE 454 - Distributed Computing with Tahsin Reza ? 4 points, 0 comments
u/Fantastic-Cod-9452: “Has anyone taken the ECE 454 course with Tahsin Reza, can you please share your experience with him and the subject overall”
Fall 2023
which course is the most useful/useless of ur major? 24 points, 44 comments
u/microwavemasterrace: “Useful: ECE 454 Distributed Systems Useless: Toss up between databases and compilers, neither is taught particularly well”
4th year SE electives 1 point, 2 comments
“What ATEs (CS/ECE/open list) for SE are the most useful and interesting? Also, what are some bird courses to take as open electives?”
u/LopsidedCupcake5294: “ECE 454 used daily for job and interviews Neural net, big data for ML eng roles Security, compilers, graphics are all pretty good Econ101 is an easy 100 Astro is not bird Earth is pretty good Programming for performance is bird and useful”
Spring 2023
Which 4th year cs courses are useful for swe interviews 0 points, 7 comments
“Title. Ok you should take courses for interest. Just curious. Are any of those courses actually useful for interviews? By for interviews, I mean like cs341. …”
u/adhdbitch: “CS / ECE 454. Pick ECE if you can”
Winter 2023
ECE 454 3 points, 0 comments
What’s been your easiest and hardest year so far? 10 points, 16 comments
u/TheRealArjun: “… 459, PMATH 332 4A - ECE 222, ECE 351, PHYS 434, PHYS 442, PHYS 454, PHYS 475 WT5 - ECE 350, ECE 454, Coop 5 4B is looking bad and its only been one month...”
CS 451 vs. ECE 454 / CS 454 3 points, 2 comments
u/flightrewind: “Hey everyone, Does anyone know about the overlap between CS 451 (Data-Intensive Distributed Computing) and ECE/CS 454 (Distributed Computing)? Is it viable to take 451 but not 454? Is it redundant to take both? …”
u/MooseJolly8956: “… Not sure about ece 454. …”
4B CE technical electives 1 point, 1 comment
“looking for opinions on course load, difficulty, projects etc in the following classes: ECE423, ECE459,ECE495, and ECE406. has anyone taken 423? there is no information out there for this one”
u/microwavemasterrace: “406 is a more advanced version of 250, highly recommend. It's one of the heaviest workload TEs supposedly, but I found it to be rather birdy. IMO ECE 454 was much heavier in workload.”
Opinions on these 4A CE Courses: 3 points, 0 comments
u/namomontbleau: “Currently these are the 4A CEs i’m considering: ECE455 Embedded Software ECE452 Software Design and Architecture ECE454 Distributed Computing ECE457A Co-operative and Adaptive Algorithms ECE486 Robot Dynamics and Control I’m most interested in workload, difficulty etc. …”
CE 4A TEs 8 points, 30 comments
u/OkCelery1514: “… My options: ECE 414, Wireless Communications ECE 445, Integrated Digital Electronics ECE 452, Software Design & Architecture ECE 454, Distributed Computing ECE 455, Embedded Software ECE 457A, Co-op & Adaptive Algorithms ECE 457C, Reinforcement Learning ECE 458, Computer …”
Spring 2022
ECE 3B advice 8 points, 10 comments
“I'm taking ECE 307, 351, 356, and 358 next term, and I'm wondering if anyone has any advice in terms of order of difficulty, time consumption, textbook needed, etc.?”
u/IcyProfit03: “… however his finals are brutal when I had him for ECE 454 where some of the questions were obscure questions not really relevant to the course. …”
Check it elsewhere for Fall 2026
- Undergraduate Calendar, 2026–27The official entry
- Requirements for Fall 2026Waterloo’s requisite checker
- Schedule of Classes, Fall 2026Instructors, rooms, live seats
- Quest Class SearchWhere you enrol
- Course outlinesSyllabi from past terms (UW login)
- UW FlowStudent ratings and reviews
- WClassesPast sections back to 2004, and who taught them