emacs: -*- html -*-
title: Curriculum Vitae
formatter: raw
id: about.cv
lastupdated: 2018-09-21
Hubert Chathi
#35, 590 Bearinger Rd.,
Waterloo,
ON,
Canada,
N2L 6C4
Technical and Personal Abilities
- Experienced in many programming languages and environments,
including: C, C++,
Objective-C,
Python,
NodeJS,
PHP,
Perl,
Java
- Experienced in Web technologies such
as XML,
HTML, CSS, and
JavaScript
- Experienced in
Linux/UNIX
(particularly Debian GNU/Linux) administration and development
- Experienced in databases, particularly
PostgreSQL and
MySQL
- Experienced in tools such
as Docker,
Kubernetes,
BuildBot, and
Nagios.
- Good knowledge of
computer security
- Fast independent worker
- Strong organizational skills
- Effective individual and team worker
- Self-motivated learner
- Excellent problem-solving skills
- Fluent in English, and some basic French and American Sign Language
Technical and Professional Experience
Senior Software Developer
- Contributed to the specifications for the
Matrix communications
protocol.
- Designed and implemented portions of the end-to-end encryption
system in Matrix.
- Developed a new backend for our content delivery and student
assessment platform
- Developed a collaborative document editor
- Maintained and optimized existing student assessment platform
October
2008 –
September 2011
- Lead the ELIS product development team.
- Designed and architected major software components.
- Developed software specifications based on client requests.
Debian Developer/Team Lead
- Coordinated activities of the GNUstep packaging team.
- Maintained software packages for the Debian distribution.
- Developed tools to aid in creating packages for Debian.
- Collaborated with program authors to fix bugs and add improvements.
- Adapted software to comply with published specifications, and tested
against other implementations.
- Analyzed and fixed interoperability and integration issues.
December
2003 –
October
2006
Debian Package Maintainer
- Maintained software packages for the Debian distribution.
- Collaborated with program authors to fix bugs and add improvements.
- Investigated applications for nonlinear filtering.
- Performed presentations to potential clients.
- Participated in and conducted research seminars.
- Trained undergraduate summer students.
- Implemented the company VPN and wiki.
Software Developer/Research Associate
- Implemented and tested several filtering algorithms.
- Developed simulations.
- Participated in and conducted research seminars.
May 1998
–
September 2000
- Analyzed the design of previous experiment control programs for
observing pigeon responses to certain stimuli, and designed and
implemented several programs for the same purpose.
- Designed and maintained a control program and library to support
these programs.
Education
Ph.D. Candidate, Computer Science
September
2001 –
May 2003
M.Math., Computer Science
September
1996 –
April 2000
B.Sc. (Honours), Computing Science
Teaching Experience
Instructional Apprentice, CS245 (Logic and Computation)
- Conducted weekly tutorials for approximately 20—30 students.
- Coordinated a team of teaching assistants.
- Lectured during the absence of the instructor for a class of about
60–100 students.
- Proofread assignments and exams.
- Held office hours.
- Marked exams.
September
2001 –
April 2007
- Marked assignments and exams.
- Led tutorials for approximately 10—30 students.
- Held office hours.
- Served as guest lecturer during the absence of the instructor for a class
of about 30—50 students.
- Answered questions on the course newsgroup.
- Proofread assignments and exams.
September
2004 –
December 2004
Sessional Instructor, CS360 (Introduction to the Theory of Computation)
- Designed and presented lectures for a class of about 40 students.
- Designed assignments and exams.
- Organized teaching assistants.
- Held office hours.
Volunteer Activities
Member of Board of Directors
Member of Orchard Committee
Member of Marketing Committee
Member of Refugee Oversight Committee
- Helped organize the sponsorship of a refugee family to relocate to
Canada
- Served as committee chair until September 2010
- Communicated between the Refugee Oversight Committee and other
church committees
September
2002 –
April
2008
Member of student executive
- Planned weekly large group and small group meetings
- Mentored students.
- Led small group discussions.
January
2004 –
April
2007
Captain for intramural soccer team
- Organized a team of between 10 to 20 Computer Science and Engineering
graduate students for indoor and outdoor soccer.
October
1997 – September 1998, October 2000
–
September 2001
Member of planning committee
- Kept track of the group's finances.
- Maintained the phone directory and web page.
- Planned and led activities.
March
– July 1996, January – July 1997, April
–
July 1998
Handbook coordinator and member of camp planning committee
- Designed and assembled the camp handbook and name tags.
- Helped with the general planning of the camp.
Assistant camp counsellor
- Supervised activities, and was involved in the music team.
Awards and Distinctions
- University of Waterloo President's Graduate Scholarship (2004-2005)
- NSERC Postgraduate Scholarship B (2003-2005)
- NSERC Postgraduate Scholarship A (2001-2003)
- NSERC Undergraduate Student Research Award (1999, 2000)
- Dean's Silver Medal in Science (2000)
- SHL Systemhouse President's Award for Education and Technology (1999)
- Canadian Information Processing Society Scholarship (1999)
- Faculty of Science Undergraduate Scholarship (1997, 1998)
- Barry J Mailloux Prize in Computing Science (1998)
- Nickle Family Foundation Prize (1997)
- International Baccalaureate Diploma Scholarship (1996)
- Undergraduate Entrance Scholarship (1996)
- Rutherford Scholarship (1996)
Other Interests
biking, photography, camping, hiking, soccer, music, camping
Publications
Hubert Chathi.
Integrating Moodle with an external tool.
iMoot conference presentation, May 2012.
[ http ]
Hubert Chan.
A parameterized algorithm for upward planarity testing (extended
abstract).
In Susanne Albers and Tomasz Radzik, editors, Proceedings of
12th annual European Symposium on Algorithms 2004, volume 3221 of
Lecture Notes in Computer Science, pages 157-168, 2004.
[ http |
.pdf ]
Hubert Chan.
A parameterized algorithm for upward planarity testing of biconnected
graphs.
Master's thesis, University of Waterloo, May 2003.
[ http ]
David J. Ballantyne, Hubert Y. Chan, and Michael A. Kouritzin.
A branching particle-based nonlinear filter for multi-target
tracking.
In Proceedings of 4th Annual Conference on Information Fusion,
pages We2-3-WeA2-10, 2001.
Hubert Y. Chan and Michael A. Kouritzin.
Particle filters for combined state and parameter estimation.
In Ivan Kadar, editor, Signal Processing, Sensor Fusion, and
Target Recognition X, volume 4380 of Proceedings of SPIE, pages
244-252, 2001.
[ http ]
David J. Ballantyne, Hubert Y. Chan, and Michael A. Kouritzin.
A novel branching particle method for tracking.
In Oliver E. Drummond, editor, Signal and Data Processing of
Small Targets, volume 4048 of Proceedings of SPIE, pages 277-287,
2000.
[ http ]
Hubert Chan, Andy Liu, and Andrei Storozhev.
Induction in Geometry.
Mathematics Competitions 10, pages 61-68,
1997.
Hubert Chan, Steven Laffin, and Daniel van Vliet.
Knight Tours.
Mathematics and Informatics Quarterly 2, pages 135-150,
1992.
References
Available on request.