Hello! My name is Qifan/Eric and I am currently a computer science master’s student under the supervision of Dr. Raouf Boutaba at the University of Waterloo. I am broadly interested in distributed systems, networking, and machine learning (specifically federated learning). I am enthusiastic about creating new systems to facilitate machine learning and applying machine learning to optimise systems with the end goal of improving accessibility of ML to the general public. Previously, I completed my undergraduate honours thesis with Dr. Ivan Beschastnikh at the University of British Columbia (UBC)’s Systopia Lab. We explored cool ways of addressing the communication bottleneck in cross-device federated learning with techniques like update compression, client sampling, and scheduling.Outside of research, I have a masters degree in management as well as a variety of industry experiences in software development and technical consulting. Some of the notable projects that I have worked on include Amazon.com's core payment systems and SAP Concur's homepage. The artefacts (code, designs, documentation etc.) that I have created have directly or indirectly impacted millions of real customers. In addition, I have participated in technical consulting projects for the Supreme Court of Canada during my time at Deloitte which benefited major class action lawsuits concerning first nations.
-
Research AssistantUniversity Of WaterlooVancouver, Bc, Ca -
Research AssistantUniversity Of Waterloo Sep 2024 - PresentWaterloo, Ontario, Canada -
Teaching AssistantUniversity Of Waterloo Sep 2024 - PresentWaterloo, Ontario, CanadaCS 246 - Object Oriented Software Development -
Research AssistantThe University Of British Columbia Apr 2022 - Jul 2024Vancouver, British Columbia, CanadaMy main research topic is improving communication efficiency in cross-device federated learning. I develop research questions and potential solutions, implement them with Python+PyTorch, conduct experiments for validation, and write papers/slides to present the outcomes. I am supervised by Dr. Ivan Beschastnikh and work closely with Dr. Mathias Lécuyer and Dr. Lanjun Wang. -
Teaching AssistantThe University Of British Columbia Jan 2020 - Apr 2023Vancouver, British Columbia, CanadaI have instructed a variety of computer science courses in the systems/programming languages/software engineering fields. I have a general responsibility of holding office hours, leading tutorials, supervising projects, and marking assessments. Specific courses include:CPSC 416 Distributed Systems - A course that introduces students to principles and designs of distributed systems. The course introduces classic distributed systems like Paxos, DHTs, vector clocks, chain replication etc.CPSC 317 Computer Networking - A course on computer networks, with an emphasis on communication protocols, network infrastructure, and distributed application development.CPSC 311 Programming Languages - An upper-year course on programming language principles. Students implement interpreters using Racket to demonstrate common programming language features.CPSC 210 Software Construction - A Java-based software engineering course with a focus on Object Oriented design -
Research AssistantThe University Of British Columbia May 2020 - Sep 2020Vancouver, British Columbia, Canada- Conceptualized novel verification techniques for concurrent Rust programs using threads with permission-based logic in Prusti, a front-end for the Viper verification language and the Z3 SMT solver- Encoded Rust source code into Viper code for verification with internal/experimental Rust compiler features such as procedural macros, compiler queries, and intermediate compiler representations (HIR, MIR) - Created a design document and a presentation to showcase use cases, syntax, encoding and implementation design- Supervised by Dr. Alexander J. Summers and funded by a NSERC Undergraduate Student Research Award -
Software Development Engineer InternAmazon Jun 2022 - Aug 2022Vancouver, British Columbia, Canada- Implemented new back-end systems with Java and the Spring framework and related front-end web pages with JavaScript and Angular to enable new payment disbursement options for 20% of Amazon.com retail sellers- Created and presented a detailed design document that went through multiple rounds of internal and external review to evaluate legacy system architecture and the feasibility of multiple designs for the new system based on extensibility, maintainability and scalability- Leveraged internal tools and AWS technologies including S3, Lambda, CloudWatch, and EC2 in the design, implementation and evaluation phases to verify system correctness and performance metrics -
Business AnalystDeloitte Jan 2022 - Apr 2022Vancouver, British Columbia, Canada- Staffed on the Microsoft/Azure technology development team for a federal class action claim system to support victims of residential schools and first nation water pollution in Canada- Reviewed existing business cases and helped develop project proposals for helping a major Canadian mining firm migrate their services to the cloud -
Software Developer InternSap Concur Sep 2020 - Apr 2021Vancouver, British Columbia, Canada- Committed to the full-stack development of SAP Concur’s next-gen homepage used by 48,000 businesses- Researched substantial current and legacy documentation/code to build and document high-performance endpoints for the homepage’s back-end services in Go as part of SAP Concur’s transition to micro-services- Implemented over a third of the front-end components and related API connection, user-permission, error handling, logging, and analytics logic using technologies like TypeScript, React and Redux- Spearheaded the design and creation of new E2E test automation with TestCafe covering 100% of current expense features and contributed to existing internal documentation to aid future knowledge transfers- Conducted routine code reviews, presented in daily scrums, participated in weekly sprints, and demoed frequently in sprint meetings as part of the agile development process
Eric Yan Education Details
-
Computer Science -
Overall 92% | Major 95% -
Master Of Management Dual Degree
Frequently Asked Questions about Eric Yan
What company does Eric Yan work for?
Eric Yan works for University Of Waterloo
What is Eric Yan's role at the current company?
Eric Yan's current role is Research Assistant.
What schools did Eric Yan attend?
Eric Yan attended University Of Waterloo, The University Of British Columbia, Ubc Sauder School Of Business.
Not the Eric Yan you were looking for?
-
2rotman.utoronto.ca, edeasset.com
-
1avema.com
Free Chrome Extension
Find emails, phones & company data instantly
Aero Online
Your AI prospecting assistant
Select data to include:
0 records × $0.02 per record
Download 750 million emails and 100 million phone numbers
Access emails and phone numbers of over 750 million business users. Instantly download verified profiles using 20+ filters, including location, job title, company, function, and industry.
Start your free trial