Born Australia, August 31, 1961
Telephone (04) 11 12 13 41
1997, Member of the Institute of Electrical and Electronic Engineers
1996, Member of the Association for Computing Machinery
1995, IEEE Computer Society
1987, Member of the Australian Computer Society
1986-87, ACS SA branch executive
1985, Affiliate of the Australian Computer Society
2004, Replacing Windows™ infrastructure with Linux™
2001, Dynamic rate limiting in an ISP setting
1999, A submission for Trips and Traps for August 1999 edition of AUUGN
1998, Zero-risk Legacy System Re-engineering (How To Squeeze 200+ Concurrent Users Onto One Little i486)
Distributed Transaction Manager
Implemented APIs, communications manager and transaction manager compliant
with X Consortium standards for TX and XATMI. This provides an alternative implementation
for these standards, equivalent to the core functions of BEA's Tuxedo.
C, UNIX, HTML, SQL
Wrote a web ordering front-end for a legacy point of sales system.
The web communications with the legacy system using a TX/XATMI compliant transaction manager
(c.f. BEA Tuxedo.)
Web Templating System
C, UNIX, HTML, CGI
Wrote a templating library and CGI framework to support writing CGI applications in C.
Oracle, Artemis, Visual BASIC, Crystal Reports, SQL, UNIX
Prepare custom reports on project management data.
Produce high-quality PostScript and PDF reports from flat-file input.
Oracle, Artemis, C, SQL, UNIX
Provide support and custom integration between Artemis ProjectViews and Oracle
2000 - 2002
C, UNIX, TCP/IP
Develop tools to automate tasks relating to operation and management of an ISP service.
Write tool to monitor network links and report faults.
Australian Unix Users Group (AUUG) Executive Committee
Y2K repair work for software for US Telco
Telephone batch barring
C, UNIX, Tuxedo, SuperCard
Tuxedo client to provide email interface for barring telephone services.
UNIX to AIX conversion
C, UNIX, AIX, Tuxedo, Informix, Oracle
Convert Tuxedo application running on SCO + Informix to new hardware, AIX + Oracle.
Tuxedo, UNIX, C, 3270
Implement new communications interface between Tuxedo and legacy systems using Telnet for 3270.
C, UNIX, Tuxedo, SuperCard
Implement tuxedo client & services to provide ability to query and update
telephone-barred status on Telco switch.
C, UNIX, Tuxedo, Informix, SuperCard
Audit Tuxedo based CRM system, identify non-compliant hardware and software, develop
proposal for repairs.
Wool Sort Machine - Communications Libraries
C, C++, UNIX
Implemented abstraction and communications libraries for hardware controllers for Wool sorting machine.
1994 - 1996
C, UNIX, Tuxedo, SuperCard
Managed support and development team for Tuxedo based CRM system.
Calling card management
C, UNIX, Tuxedo
Write Tuxedo interfaces to provide calling card management for a major Australian telco.&nsp;
Back-end data management was implemented in CICS on the IBM mainframe, and interfaced to Tuxedo
using my purpose-built language.
CRM, Legacy Integration
C, UNIX, Tuxedo
This project utilised Tuxedo running on two i486 computers, with Informix SQL database.
The project provided a history of notes and commitments made to customers by frontline support staff of
a major Australian Telco, and integrated access to the legacy billing and trouble reporting systems.
The system was accessed via Macintosh computers.
Integration with legacy systems on IBM mainframes was achieved with zero change to legacy applications.
Legacy systems were presented as Tuxedo services using a purpose-built language which I designed, with access
via 3270 terminal controllers and scripted in that language.
MS-DOS, Windows, UNIX
Various support services including Lan Manager for Unix, installation of distributed
PC data-base, Unix support
Hardware fault diagnosis
Wrote a program to aid in fault diagnosis for Olivetti betting terminal.
My duties included assisting sales personnel writing tenders; discussing and analysing
customer requirements; assembling and demonstrating systems; installing systems; solving telephone queries;
providing on-going software maintenance; assisting with hardware fault diagnosis; consulting on software
design; and programming as required.
Designed and wrote a report description language, compiler and runtime.
Extended precision arithmetic
Designed and wrote a class to implement arbitrarily long integers
Unix systems programmer
C, UNIX, TCP/IP, NFS
In an academic environment, I was responsible for support of all the Unix systems which
variously included NCR Tower 32/600's, diskless and diskfull SUN 3/60's, SUN Sparcstation and SUN 4/490.
My duties included preparation of benchmarks for selection of new systems; participation in hardware selection
committees; installation of new systems; periodic maintenance of systems; support of operators; design and
development of student accounting; installation, support and maintenance of networking software; installation,
support and maintenance of electronic mail systems; registration of users; monitoring and maintenance of
Networking facilities included NFS, TCP/IP and ACSnet (SUN III).
I developed a disk and usage accounting system for the Unix systems, which integrated with
the central VMS student accounting system.
I was a member of the Elm development group, which was an early "open source", global
C, UNIX, UUCP
Wrote a system to shadow Informix/CISAM files to a 'warm' backup system.
Developed message transmission interfaces between a telepaging system and paging transmitters
complying with specifications for Telecom Telefinder paging network, and PET
Call center ordering system
On a team of three, I helped produce an ordering system for a call center.
Orders were dispatched by modem to printers at regional delivery centres (pizza kitchens).
I was invited to relieve a lecturer at Elizabeth TAFE.
Subjects were Programming Fundamentals which included problem solving, NS charts, pseudo-code,
flow-charts, Boolean logic and structured programming; and Information Processing Concepts
which included computer literacy, hardware, operating systems, languages and office automation.
Insurance brokers package
Designed in conjunction with a consortium of brokers, I wrote a multi-user management
system for insurance broking; an accounting package for insurance brokers, if you will.
Pascal, C, Unix
Developed multi-user application framework including: Terminal independent window manager;
multi-key ISAM data base manager; Large Binary Object (BLOB) database type; user definable reports;
advanced memory manager; and performance profiling.
Pascal, Apple ///, MS-DOS
Converted sporting club membership ledger from single user Apple /// to MS-DOS network.
Customs and duties spreadsheet
userproof spreadsheet to calculate customs & duties of imports.
Supervise the company's four programmers, and oversee design and development
of new projects.
Designed and wrote libraries for b-trees, file record management, free-form
text editor and free-form text database fields.
Insurance broking system
Pascal, 6502, 8086 assembly, Apple ///, MS-DOS
Programming, maintenance, installation and training in the company's main product, a multi-user insurance broking package written in Pascal and assembler.
Conceived on the notion that programs are the same, with just fields and screen layouts
being different; I designed and wrote tools for programmers: a WYSIWYG editor and program generator for
database maintenance screens, and another for simple reports.
Pascal, Apple ///
Designed and wrote a payroll module for an integrated accounting suite.
Petty cash ledger
Pascal, Apple ///
Wrote a petty cash ledger for an integrated accounting suite.
Hospital billing system
Canon CX-1, BASIC
Wrote a billing program for use in a group of private nursing homes, as per system requirements defined
by the group's manager.
Canon CX-1, BX-1, AX-1, SX-320, BASIC
As Canon's Victorian State Programmer, my duties were to provide post-sales support, debugging and
customisation of packages for Canon's Victorian and Tasmanian customers.
Developed payroll module for integrated accounting suite.
Part of a team of three, two programmers and an accountant, developed stock control module for integrated
BASIC, Apple ][
Localise a US accounting package written for the Apple ][
Project time recording tool
Pascal, Apple ][
Designed and wrote a tool to record and report time worked on different project tasks
Develop stock control
Designed a stock control system to customer specifications, and integrate it with I.M.S.'s debtors and
Maintenance of public bar stock system
BASIC, Canon BX-1
Duties were to support, debug and improve a stock system, written in BASIC, designed for hotels.
Graphical analysis of census data
DEC-10, Tops-10, Fortran
During the year of my matriculation, I wrote a program for the Centre for Applied Social Science Research
at Flinders University.
The program, written in FORTRAN on a DEC-10, provided graphical analysis of census data.
During my last two year at school, I wrote a BASIC interpreter.