Resume

Skills

C/C++
12 years experience.
x86 assembly
Optimized C code using SIMD instructions.
Java/Java Servlets
Designed and programmed an online bookstore as part of a group project and many more small Java applications.
PHP
Developed webmail application from scratch plus customization of many existing applications.
SQL/MySQL
Classroom experience plus usage with both PHP and Java applications.
Palm OS API
Developed the front end to a medical reference database to be used on Palm devices.
Win32/WinCE API
Developed basic applications as well as porting a Palm OS application to WinCE.
Networking
Setup small networks and have basic socket programming experience.
OpenGL/Graphics
Programmed a 3D scan conversion renderer from scratch plus other more advanced projects.
Linux/Unix/OS X/Windows
Experience with development and use of these operating systems at home and in work environments.

Work Experience

  • Computer Scientist

    November 2007 - Present

    • Software Development.
  • Software Developer

    August 2005 - 2009

    • Worked on contract to develop custom applications.
    • Most Recent Project: Toronto Notes - Clinical Information Set 2007 for Palm OS and Pocket PC
    • See my projects page for more details.
  • Software Developer

    May 2005 - December 2005

    • Helped develop and maintain a C language simulation of a hardware video encoder.
    • Wrote code to produce, verify, and use simulation test data.
    • Optimized simulation code with x86 assembly using SIMD instructions.
    • Optimized simulation code by splitting the work over multiple threads. (Windows threads and pthreads)
  • Software Developer

    January 2004 - August 2004

    • Developed physics simulations using the GEANT4 C++ toolkit
    • GEANT4 is a highly object oriented physics simulation toolkit
    • Worked primarily in Linux
  • Lifeguard and Swim Instructor

    June 2000 - March 2004

    • Trained for emergency situations
    • Work and communicate with a team of several other lifeguards
    • Responsible for up to 100 people in the pool facility
    • Regular pool operating duties/cleaning
    • Teach aquaquest swimming lessons
  • Tutor

    May 2002 - December 2003

    Self Employed

    • Tutored high school students
    • Subjects included Math 9-12 and Computing Science
    • Assisted with selected problems to increase understanding of previously taught material
    • Taught new material
  • Teaching Assistant

    January 2003 - April 2003

    • CMPT 101 Intro to Programming
    • Held regular office hours for student consultation twice weekly
    • Marked programming assignments written in Java
    • Marked midterm and final exam
  • Secretary on Executive Committee

    September 2002 - December 2002

    • Took minutes at regular meetings
    • Scheduled meetings and booked rooms
    • Assisted with other functions held by the student society
  • Web Designer

    May 1999 - March 2002

    Port Moody Aquarians Swim Club

    • Voluntarily maintained a website for the swim club
    • Designed a new website to replace the old and out of date site
    • Posted practise schedules and other news
  • Computer Lab Assistant

    October 2000 - July 2001

    Port Moody Secondary School

    • Installed hardware and software to both new and old computers
    • Troubleshooted faulty hardware and software
    • Used Norton Ghost to restore computers to a preset state
    • Assisted students with using different software

Education

  • B.Sc. Honours Computing Science with Math Minor

    September 2001 - April 2007

    • 3.4 Cumulative GPA
    • 4 Semesters of Co-op work experience
    • Dean’s honour roll until 2006
    • Repeat recipient of an open undergraduate scholarship award