Systems Development Skills
- Microsoft Windows 2000, 98, 95, DOS, UNIX, Macintosh
Languages & Development Tools
- Java, J2EE, Struts, JSP, HTML, UNIX Shell Scripting
- Sun Certified Programmer for the Java 2 Platform 1.4
- WebSphere Application Developer v4.0, HttpUnit
- C/C++, Visual C++, Visual J++, Visual Basic 6
- CVS and Visual Source Safe
- Object-Oriented Analysis and Design
- Design Patterns, C++ Idioms
- C++ Standard Template Library
- Lisp, Pascal, Forth, 68000 assembler
- OSX Project Builder, Cocoa, AppleScript
- Class Libraries: PowerPlant, THINK (TCL)
- Oracle 8i/ SQL / SQLWindows / Pro*C
- XML parsing and production
Software Engineer Feb 2005-Present
- Added functionality to "Teraview", a land-registry support application.
- C++ / Sybase / Clearcase / UNIX
Senior Software Engineer Jan 04-Aug 04
- Developed core code in C++ integrating a desktop application with an instant messaging
program and a server application.
- Assisted in design and implementation of a social networking system.
- Created a media downloading system incorporating a BitTorrent client.
- Architected an ACE-based efficient messaging system that traverses firewalls
while minimizing server load and maintaining central control.
Java Developer Feb 03-Jul 03
- Contract to write JSPs and Java code within the Jakarta Struts framework as part of an
apprenticeship support website for the Ontario Ministry of Training, Colleges and Universities
- Contract to update "Document Assembly" functionality for use with G&G's new web-based
Software Engineer June 02-Sept 02
- Wrote Java Server Pages (JSPs) for clients of an Electronic Bill Presentment
and Payment service, which included Java and HTML programming.
The JSP's were used within Pitney Bowes' D3 document presentation system.
- Wrote UNIX shell scripts and C code to automate source tree management
Programmer Feb 02-June 02
- Ported web security appliction to Mac OS X 10.1 using wxWindows.
Programmer May 00-Sept 01
- Developed support classes and widgets for a multithreaded Windows/Mac/Linux GUI
- Implemented a cross-platform Unicode and XML-based text system supporting hot links,
multiple fonts, sizes and styles and paragraph formatting. Used for all labels, window
titles, text-editing and help views throughout Hotline 2.0.
- Wrote a cross-platform framework for drag-and-drop operations, supporting multiple
items and data types, taking advantage of the graphical conventions offered by each
host operating system.
- Designed a tree-table base class with sorting and traversal facilities.
- Implemented playlist, file-list, file-icon, news tree, news article, and graphical
table header GUI views.
- Wrote a Mac sound interface, and TCP and UDP listeners.
Senior Programmer Jan 98-April 00
- Redesigned and expanded a cross-platform database interface layer.
- Designed and implemented a client / server model in which clients stay in sync with a
server or disconnect and reconnect on the fly.
- Upgraded cross-platform facilities and data types used by the UI layer,
e.g. improved a "user set" data type from a max of 32 users to represent any number of users
or groups of users.
- Used templates and macros to reduce the number of cross-platform source files and
provide a convenient database schema-definition facility.
Programmer Dec 93-Jan 98
- Wrote and maintained the GUI for two major releases of "Amicus Attorney for Macintosh",
a legal office productivity package.
- Extended the graphic capabilities of the THINK Class Library to handle drag and drop
editing and smooth refresh of complex views.
- Worked with Windows team on cross-platform issues, and ported modules from Windows to
- Wrote a server database administration program and a powerful installer.
- Designed and implemented a cross-platform import/export and database backup system
with per-field merge and formatting options.
Database Programmer July 92-Aug 93
- Wrote and maintained a multi-user text, fax and image management tool. This enabled
salespeople to locate product information and send it to clients.
- Developed a product demonstration system so that large clients could view product
literature and screen shots, then insert orders into our database from their own PCs.
- Used SQLTCP to support a wide variety of modem hardware.
- Wrote Windows DLLs in C to provide image manipulation and compression in
- Wrote an in-house electronic mail system in SQLWindows.
Educational Experience May 91-April 92
- Designed a "free-format spreadsheet" called LabWriter, which facilitated the production
of lab reports.
- Wrote a multi-font, size, and style word processor in C++ on the Macintosh, supporting
tables, graphs, and spreadsheet cells intermingled in the text.
- Implemented a Lisp-based macro language for the spreadsheet. The interpreter was written
in platform-independent C++ on Sun UNIX. It maintained the dependencies among cells and
encapsulated a friend's math routines.
Queen's University at Kingston, Ontario 1992
- BScE Math and Engineering, Control and Communications Option
- Amateur Woodworker,
Rock & Ice Climber, Bicyclist and Windsurfer
- Summer and Winter Outward Bound Alumnus
References available on request