Teaching Assistant, Department of Electrical and Computer Engineering, University of Toronto
Winter 2011/2012/2013/2014/2015/2016
ECE 297 Communication and Design The course carries out the design and the development of a server/client application in C programming language given a set of requirements and constraints.
Tasks: Demonstrating in C programming labs, assisting in debugging C programs, and guiding students to get the hands-on experience of working with Unix shell, Eclipse IDE, Apache Subversion(SVN).
ECE 244 Programming Fundamentals The lecture covers topics such as classes and objects, fundamental data structures (lists, trees, graphs, etc.), big-O complexity analysis, and testing and debugging. The laboratory assignments emphasize the use of object-oriented programming in the design and implementation. Tasks: Demonstrating in C++ programming labs, assisting in debugging C++ programs, and guiding students to get the hands-on experience of working with Unix shell, NetBeans IDE.
APS105 Computer Fundamentals
Teaching Assistant, Department of Computer Science, University of Toronto
CSC358 Principle of Computer Networks The course offers an introduction to computer networks with an emphasis on fundamental principles. Basic understanding of computer networks and network protocols. Topics include network hardware and software, routing, addressing, congestion control, reliable data transfer, performance analysis, local area networks, and TCP/IP.
CSC458/2209 Computer Networks The emphasis of the course is network programming and applications. Topics covered in this course include packet switching systems, socket programming, network software, hardware, and protocols, network naming and addressing, congestion control schemes, software-defined networking, network security, and wireless networking.
CSC190 Computer Algorithms and Data Structures The course covers the topic of C programming as well as complex data structures, including hash table implemented with linked list.
Tasks: Demonstrating in C programming labs, guiding students to gain the hands-on experience of working on the platform of CentOS, ssh and git repository, and assisting in debugging C programs.
CSC108 Python Programming Tasks: Supervising the group of students, from a variety of non-computer science backgrounds, leading the discussions, and guiding through their learning-curve of Python programming and debugging.
CSC358 Introduction to Computer Networks The topics of this course include: layered network architecture, multiple-access protocols, IP routing, Reliable Data Transfer and Congestion control in TCP. It also introduces fundamental quequing models.
Tasks: Organizing tutorials for the class size of 150, marking midterms and finals.
CSC310 Information Theory The course consists of two parts: Part I How to compress data; Part II how to transmit information reliably. Tasks: Giving tutorials to a class size of 50, marking midterms and finals.
CSC338 Numerical Methods This course was provided in Mississauga campus in the Winter term 2010. The main topics were scientific computing, systems of linear equations, linear least squares, nonlinear equations, optimization, and interpolation. Tasks: Giving tutorials to a class size of 15, marking midterms and finals.
|