Skills Summary
- experience in designing, implementing, and maintaining large software systems
- adept at analyzing and debugging complex problems
- broad range of technical knowledge:
- proficient in C, C++, Java, C#, Python, x86 assembly (competent in many others)
- graphics with OpenGL, Direct3D
- concurrency with pthreads, Java, uC++
- development experience spanning device drivers, operating systems, applications
- proven ability to manage and lead
- presents complex information clearly and concisely
Professional Experience
Software Design Engineer
, Microsoft Inc., September 2008 – December 2008
- designed and implemented Sudoku for Zune in two months
- lead iterative development of existing Zune games
- prototyped new technologies for future products
Game Engineer
, Three Rings Design Inc., January 2008 – April 2008
- masked network latency using multiple client and server compensation techniques
- created behavior and path-finding artificial intelligence systems
- implemented fast collision detection using spatial hashing
Software Engineer
, ALT Software Inc., May 2007 – August 2007
- managed architecture and implementation of new version of Fisher-Price toy
- met with clients to assess current needs and plan future work
- quickly resolved critical bugs (e.g., eliminated pervasive memory leaks)
Software Engineer
, AMD Inc., September 2006 – December 2006
- designed and coded JPEG decoder feature for handheld media processors
- innovated asynchronous approach with ASIC controlling hardware-assisted and pure software decoder applets running on a DSP
Software Engineer
, ATI Technologies, January 2006 – May 2006
- handled design, implementation, and support of tool facilitating code reviews
- implemented run-time-configurable failure tolerance in low-level device driver
- created cross-platform USB interface driver
Other Experience
Director, Mathematics Endowment Fund
, April 2008 – April 2009
- managed operations of a $3.1-million fund
- solicited applications for $135 000 in funding available annually
- organized a 40-member funding council to make funding decisions
Director, Software Engineering Orientation Week
, 2007
- volunteered in excess of 500 hours in the preparation, planning, and
implementation of Orientation Week activities for over 120 first-year
students
- successfully planned a five-hour multi-faceted event for 3100 participants
- recruited and trained 20 orientation leaders
Fishing Girl
- created casual action game in C#/XNA for Xbox 360
- employed an iterative design process and player usability tests to "find the fun"
- winner of the top Silver Medal in the Lost Garden Prototyping Challenge
High King
- created multiplayer turn-based strategic board game in Java
- hand-crafted pixel art for the entire game
- winner of the 2006 Game Gardens Challenge (hosted by Three Rings Design Inc.)
Education
University of Waterloo
, Waterloo, ON, 2009
Bachelor of Computer Science, With Distinction - Dean's Honours List
- grade average: 95%
- relevant courses: Operating Systems, Algorithms, Concurrent Programming, Compilers
Achievements and Activities
- awarded numerous scholarships (over $25 000)
- Federation of Chinese Professionals Education Foundation Scholarship for achieving the highest mark (100%) in Algorithms
- Cisco Systems 4th Year Award for ranking in the top five Computer Science students
- Faculty of Engineering Upper-Year Scholarships for being the top Software Engineering student for multiple terms
- English Language Proficiency Exam Award for exceptional written communication skills
- Scotiabank Software Engineering Entrance Scholarship for continued academic and leadership excellence in secondary school and university
- black belt in Shotokan karate
- fluent in French