| Education: |
B.S., Computer Science, Brigham Young University, June 1990 |
| Skills: | |
| Languages and Etc.: |
Python, C++, Java, C, Perl, HTML, XML, UML,
Pascal |
| Environments and Tools: |
wxPython, Linux, Mac OS X, MS Windows, wxWidgets, Solaris, HP-UX, SWIG, SourceForge, Emacs, Zope, Webware, XML-RPC, SOAP, RPM, SCO, Apache, CORBA, Subversion, CVS, Perforce, Various GNU Tools, ICVerify, Rational Rose, Extreme Programming, Rational Unified Process, POET, Oracle, SQL Server, DOS, PVCS, OS/2, Novell, X-Windows/Motif/GTK |
| Achievements: |
|
| 1998-present |
Created and maintain wxPython, an Open Source project that implements a cross platform GUI toolkit for Python, built upon wxWidgets, and also served as a member of the wxWidgets core development team. Built up a community of thousands of wxPython users and contributors. Provided dozens of successful releases as the project evolves. Developed a high skill level in user interface design prinicples and computer-human interaction concepts.
|
| 1988-present |
Have held various employment positions, including senior software engineer, project or system architect, technical lead, and project manager. |
| March 2006 |
Coauthored wxPython in Action, published by Manning Publications.
|
| July 2003 |
Python 2.3 is released and contains for the first time an extension module originally written by me, the new bsddb module.
|
| July 2002 |
Awarded the Active State Programmers' Choice Award for my work on wxPython.
|
| May 2001 |
A short article about wxPython published in Dr. Dobbs Journal (sidebar to wxWidgets article.)
|
| June 2000 |
An article about my software, wxPython, appeared in the Linux Journal.
|
| 2000-present |
Presented tutorials and talks at software development conferences, usually at least one per year.
|
| 1992 |
3M Circle of Technical Excellence group winner |
| Work Experience: |
|
| Dec 2002 - Present |
Consultant Open Source Applications Foundation -- San Francisco, CA
OSAF is funding the development of wxPython through me. wxPython is a cross platform GUI toolkit for the Python language that is supported on the Windows, Linux and OSX platforms and is built upon the wxWidgets C++ toolkit.
- First line of support for OSAF developers with wxWidgets or wxPython questions.
- Assist with UI design and implementation, and also finding and fixing wxPython related bugs in Chandler.
- Ongoing design, development, documentation, etc. of the wxPython toolkit.
- Contribute to the wxWidgets project as a member of the core development team.
- De facto leader of the wxPython user community.
- Co-authored a book about wxPython.
- Other wxPython related projects.
|
| Aug 2001 - Nov 2002 |
Software Architect SMB Technologies -- Portland, OR
When Sliceware closed the intellectual property was puchased by SMB Technologies and I was kept on to continue development. In October 2002 the IP and other assets were purchased by a third company and after the transfer was complete it was decided that they no longer needed my services.
- Helped design a custom Linux system installer, automated remote system update, and etc. Directed their implementation by another programmer.
- Designed a system for remote adminstration of generic "network appliances" via XML-RPC over an SSL channel and implemented the foundation pieces.
|
| Jan 2001 - July 2001 |
Software Architect Sliceware -- Portland, OR
- Design and implement a GUI application using wxPython to act as client for widely distributed server-based applications.
- Enhance and maintain wxPython and other Open Source tools.
- Participate in the design of future versions of current software and new software products.
- Assist with technical recruiting.
- Involved with the design and prototyping of a general purpose framework for presenting a remote user interface (either GUI or browser-based) for server-based or distributed applications, to be used for aggregated remote management of Sliceware's next generation of network appliances and Internet gateway devices.
- Due to regulatory problems the the VC was not able to adequately fund Sliceware and so Sliceware was forced to close up shop.
|
| Sept 1996 - Dec 2000 |
Senior Technical Director
System Architect
Jenkon International, Inc. -- Vancouver, WA
- Interim Webmaster until IS could hire somebody to fill the position.
- Company-wide resource for Web and Internet related issues.
- Responsible for the design and implementation of a Web based
E-Commerce Application which interfaces with Jenkon's core, legacy application
running in the Unidata database
environment.
- Also responsible for the design and implementation of a non-browser
communications interface to the same data and functionality for a Windows
product implemented by a partner company. Assisted with the design and
technical direction of this application.
- Utilized an interpreted OO language called Python, with several components written in C/C++,
to implement the web application and client interface. Trained new staff on
the Python language. Was personally responsible for all the foundation work
that the remaining staff built upon, and orchestrating the coming together of
all the components.
- Designed and implemented an RPC server for the legacy application to
allow the web application to reside on a web server remote from the
application server. Features include user-authentification, compression and
encryption of the data stream.
- Assisted with defining team structure, hiring of staff, project plans,
all technical resources, etc.
- Designed and implemented the first phase of a distributed, fault-tolerant
credit card processing system that interfaces with IC Verify from CyberCash.
- Assigned as System Architect and act as a company-wide resource,
assisting with or mentoring on projects in all product lines.
- Primarily focused on the design and implementation of a next generation system to replace current legacy applications. It is a highly distributed, object-oriented data management system. The design of the project is being done using UML and following the Rational Unified Process. The implementation is in Java and JPython, is using CORBA and Voyager for the middleware, and various ODBMS and RDBMS for the backend.
|
| Oct. 1994 - Sept. 1996 |
Senior Software Engineer
Project Architect
Product Lead
Illuminet, Inc. (formerly U.S.
Intelco Networks) -- Olympia, WA
- Assisted with the completion of the AMAT7 project (a SS7 network
monitoring and deductive billing application, which is Bellcore TR-NWT-001087
compliant) for the Tele-Sciences LDOS (real-time) platform. This product
allows SS7 network providers (the telephone companies) to perform usage
sensitive billing of network resources.
- Assigned as Project Architect (equivalent to Technical Lead) for a
new project, CDR7 (Call Detail Recording, also implemented via deductive SS7
network monitoring) for the Hewlett-Packard AcceSS7 platform (vxWorks and
HP-UX). This product enables per call billing for the use of the voice
trunks by an interconnecting provider.
- Did initial object oriented design work, and prototypes. Implemented
several foundation classes in C++, including abstract data types, utilities,
and an event-driven framework for the real-time processes. Also implemented
an object oriented messaging subsystem for the IPC between processes.
- Coordinated with our partner company, HP Telecommunications Systems
Division in Edinburgh, Scotland. Led the development work of the project
with 9 Software Engineers working under me.
- Assisted in landing a multi-million dollar contract with a major Regional
Bell Operating Company, (RBOC). Successfully moved this product through the
Alpha, Beta and release stages.
- Did design work for a rewrite of the AMAT7 product for the HP AcceSS7
platform. Guided the development of this work.
- Promoted to Product Lead (equivalent to Development Manager).
Assumed responsibility for all aspects of the technical development of SS7
networking products, as well as supervision/management of the employees and
contractors working on the products. Took a more direct role with
communicating with senior management and customer contacts.
- Assisted with responding to an RFP by another major RBOC, and
participated in a field trial for the RBOC with our only major competitor.
As a result, we were named as vendor of choice.
| May 1990 - Sept. 1994 |
Software Engineer
3M Health Information Systems -- Salt Lake City, UT
|
| July 1989 - May 1990 |
Systems Administrator
Brigham Young University -- Provo, UT
|
| March 1989 - Feb 1990 |
PC Programmer
Eagleplace Inc. -- Salt Lake City, UT
|
| June 1988 - July 1989 |
Teaching Assistant
Brigham Young University -- Provo, UT
|
| Jan 1988 - Sept. 1988 |
PC Programmer
Timp Software -- Provo, UT
|
| References: |
|
| |
Available upon request.
|
|