Swinging to the JavaTM beat!



Employment

2001 – 2002   JazSoft Consulting Inc.   Edmonton, AB

Consultant (BEQ Technologies Inc)

  • Java Developer

    • Responsible for design and development of Java code for the commercial product called “RealDesk”.

    • Wrote the back-end filesystem that mapped physical filesystem objects with RealDesk links, which were then represented in a three-dimensional scene using Sun’s J3D API.

    • Wrote the Remote Access code. This involved creating a protocol on top of SSL and then implementing both the client and server. The Remote Access code allows users to securely connect from one RealDesk computer to another RealDesk computer and share files.

    • Wrote the Home Automation X10 code. This code used the serial port to communicate with X10 devices and allowed the computer to control devices such as lights, appliances and thermostats. The computer code turn the lights on/off, schedule activity for the lights and control and get status of X10 aware thermostats.

  • Systems Administrator

    • Administered several mission critical Linux servers. A web server, a CVS server and a games server (as the company was involved in a similar market to games, we felt it valuable to make our presence known by administering high-quality games servers for online gamers).



1999 – 2001   JazSoft Consulting Inc.   Edmonton, AB

Consultant (ADEPT Project)

  • Java and EJB Architect

    • Responsible for designing the Java architecture of an n-tier Enterprise Java Beans application.

    • Used Oracle 8i as the data store and EJB container.

    • Used a Java application for client-side code.

    • Designed a framework that encapsulated all database access and simulated entity beans using session beans. (The EJB container only supported session beans)

    • Designed “Data Aware” GUI components that used our framework to access data. This greatly improved consistency and development time of the GUI.

  • Lead Java programmer

    • Responsible for mentoring the other programmers in the Java language.

    • Wrote a code-generator that interrogates the database as to structure of each table. This generator then produced all the code necessary to implement persistence of the data based on the previously designed framework.

    • Wrote the document management subsystem of the project.

    • Responsible for working with Oracle to resolve issues for Oracle 8i as and EJB server.

    • Code reviewed all code written by other developers during the first half of the project.



1995 – 1999   Sierra Systems Consultants Inc.   Edmonton, AB

Consultant

  • Systems Admin

    • Systems Admin for the systems test group of a large IT project

    • Insured 7 system test databases were in the correct state for various tests (loading and backing up data, ensuring correct versions of code in environment, etc.)

    • Ran batch testing processes

    • Wrote korn shell scripts to automate the validation of batch process output. Before the scripts, testers had to manually examine approximately 500 pages of output. After the scripts, the testers only had to validate those pages with differences on them.

  • Embedded Device Programmer

    • Using Newton Script, programmed the user interface and underlying engine for a clinical device used to learn the gait (walk) pattern of a patient and then program a FES (Functional Electronic Stimulation) device to automatically stimulate the patient’s muscles at the correct point in their walk. This device allowed a person with a condition known as “Foot Drop” (common in stroke patients) to walk more normally again.

    • Using C and assembler wrote code for the FES device to handle the communications between the device and an Apple Newton PDA. Also wrote code to allow for the training of the device, and the electrical stimulation of muscles on a patient’s leg.

    • Created system test document to validate the correct operation of the PDA.

    • Created supporting documentation to support FDA approval of the device.

  • Web Master

    • Webmastered a large (over 800 HTML pages and 200 CGI scripts) website.

    • Redesigned two separate sites to have a common look and feel.

    • During the redesign, wrote korn shell scripts to automate many of the tasks involved in migrating the content of the existing sites to the new look and feel.

  • Java Programmer

    • Wrote GUI and server sides routines for a Java applet used for online reservations of Recreational Vehicles.

    • Server side code was database independent, and was actually run on three different databases with few changes.

    • GUI code was written to support both common browsers.


Education

1989 – 1995 University of Alberta Edmonton, AB

Bachelor of Science in Computer Engineering

  • Completed the course “Object-Oriented Analysis and Design with UML, With an Introduction to Rational Rose”

  • Have programmed in Java, C++, C, JavaScript, HTML, Visual Basic, Lisp, ProLog, Pascal, Fortran, NewtonScript, Perl, ksh, csh and 68000 Assembly



Professional memberships

Sun Certified Programmer for the Java 2 Platform

Professional Engineer in Alberta

Awards received

First place, 1993 Software Engineering Contest, University of Alberta.

Alexander Rutherford Scholarship

Top Marks – Computer Electronics

Patents

Pending US Patent #60/361,824