As my employment history below shows, I have had the opportunity to learn and use a wide range of technologies in various environments. Below is a brief summary of my skills.
C/C++: Have developed in both C and C++ in a wide variety of environments. These include embedded systems, UNIX and Windows operating systems developing applications such as Internet CGIs, data conversion, web page generation, paging systems, device drivers, learning management systems and protocol simulators.
Java: Developed a revision control system using Java Servlets (Tomcat) to manage the source control and generation of Adobe Flash multimedia files for computer based training software. We-based timesheet entry systems. Heavy use of JDBC and
RMI and some XML. Also written various command line, swing GUI and Eclipse RCP based utilities.
Internet: Have done lots of web based development, including the Java Servlets based system listed above, CGI programs to provide facilities such as ad-hoc SQL database queries, learning management systems and courseware delivery. Also acted as system administrator for a company web server running Apache HTTP server on Linux.
Client/Server: Developed several applications using PC/Windows 95 clients, and a variety of databases on both NT and UNIX back-end servers.
Databases: Have designed and administered databases for many projects. Responsibilities have included overall database design, optimisation of batch processes and general queries, and trouble-shooting concurrency problems in a multi-user environment. Databases include Oracle, Postgresql, MS SQL Server, MS Access, Sybase SQL Anywhere, Ingres and CodeBase (xBase).
Embedded Systems: Worked for three years developing and enhancing an NEC paging system using a Motorola 68K CPU. Most of the system was written in C, and had to interface with other systems and operations terminals. Debugging would often entail the use of an in-circuit emulator and assembler code.
Delphi: Developed an application with a “wizard-like” interface to prompt employers with simple questions regarding their pay-roll status, and produce completed forms for taxation purposes.
| Development Tools: | Borland C/C++, Unix C/C++, Java JDK, Eclipse, Delphi Compilers, In-Circuit Emulators, OpenUI, VRTX, Cross Compilers |
| Languages: | C++, C, Java, Delphi/Object Pascal, SQL, Oracle PL/SQL, HTML, CSS, XML, Javascript, UNIX Shell Script |
| Databases: | Oracle, Postgresql, Microsoft SQL Server, Microsoft Access, Sybase SQL Anywhere, Ingres, Codebase (xBase) |
| Operating Systems: | Windows 95-XP, UNIX (Linux, Sun OS), Windows 3.1, DOS |
| Internet Development: | Java Servlets (Tomcat), simple PHP, HTML, CSS, XML, Javascript, CGI application development |
1/3/2005 — Onwards
Available as an independent contractor for internet and software development and support.
Projects I have worked on include:
Recruitment Software Australia — Internet Interface to DebtCon
Developed a web based front-end to an existing contractor management system. This system allowed contractors to enter time sheet information for invoicing purposes, and clients to approve entered time sheets, all online – replacing a manual system involving numerous weekly faxes.
The Internet interface was developed in Java servlets, with heavy use of javascript for validation and user feedback. The application also provides a range of other information including work history and billing details. By providing this information online the company is able to reduce the number of phone enquiries they regularly receive.
Solomon Partnership — Customarketer
Developed a web-based loyalty card management system that collects marketing and sales data from in-store point of sale systems, allowing efficient reporting and management of a “loyalty points” system. Main development was in PHP, with the data upload component running as a scheduled java-based program, communicating over the Internet using HTTPS and XML.
Online Learning Australia Pty. Ltd. — Analysis and Specification for an LMS
Performed analysis of requirements and produced a high-level technical specification and project plan for the development of a web-based Learning Management System for use in hosting company produced courseware to the public.
Datatask Pty. Ltd. — Ongoing Support
Various support and services to assist their business goals. These include Linux server migration, staff training, development of internal development tools and systems development infrastructure design.
HR Anywhere — Timesheets Anywhere Requirements Specification
Developed a requirements specification for a web-based timesheet entry and management system for HR Anyhwere, a Human Resources services company. This document was used as part of the material for a request for tender process.
On Notice Pty. Ltd. — Server Installation and Configuration
Installed and configured two server machines for use in video capture and transcoding. One installation was Fedora Core 4 Linux running MythTV for video capture, the other running CentOS Linux with an Oracle database.
Online Learning Australia Pty. Ltd. — Timesheet Entry System
Developed a web-based timesheet entry system to allow employees and contractors to enter their hours worked against various project tasks. The system had to interface with the business intelligence system to both read available project tasks for billing time against, and inject completed timesheet information back into the project planning systems. It also had to interface with several authentication systems for user login including LDAP.
The entry system was written in PHP, using a heavy amount of dynamic HTML and Javascript to optimize the user interface for efficient data entry. Postgresql was used for RDBMS facilities.
Digerati Pty. Ltd. — The Bake-off
The client required input on re-developing their products in alternative technologies. I was one several developers hired to spend a few weeks in a “Bake-off,” exploring and prototyping with different technologies as a feasibility study.
The main prototype I produced was written using Borland C++ Builder 6, the Firebird RDBMS, and the Mozilla Firefox Active X control instead of the standard Microsoft Internet Explorer Active X control for HTML data rendering. The prototype addressed all the major functionality requirements and the process showed several good and bad approaches to implementing several of the functional components.
Satyam — CDW Upgrade
This project for Telstra involved migrating a suite of applications to newer hardware and software platforms. The target hardware runs SunOS UNIX and Oracle databases. My duties included writing shell scripts to automate many of the complex migration and validation tasks that had to be repeatedly performed during testing and the final “go-live” migration. This included analysis tools to verify data synchronisation, and file migration systems that would efficiently move terabytes of data over the internal network.
Datatask Pty. Ltd.
4/1/1999 — 28/2/2005 Application Developer
Datatask develops computer based training courses. All application development is in C++ or Java.
Developing tools for the courseware development environment including a “Check-In/Check-Out Repository System” used as a revision control system for the Adobe Flash multimedia resources used for generating courseware. This was written as a browser based application using Java Servlets interfacing with a Postgresql database. Various components of the system involved the use of XML, Remote Method Invocations (RMI) and some client side components that interacted with the browser.
Lead a team in the conversion of courseware from a internal proprietary format to using Adobe Flash for courseware delivery.
I have been involved in the development of several major parts of the student management and courseware delivery system, including:
Developed the “Datatrain Workbench” which allowed students anywhere on the Internet to submit JCL, Cobol and other jobs to Datatask, to be processed by the company’s P390. The server is fully multi-threaded and runs on a Linux server. It will receive jobs from the students, submit them to the P390, hold the results and allow the student to retrieve them.
Acting as system administrator for the company Internet firewall, web and mail server, which is running on the Linux operating system.
(formerly Ferntree Computer Corporation)
27/3/1995 — 18/12/1998
27/3/1995 — 31/10/1995 Analyst/Programmer
1/11/1995 — 18/12/1998 Senior Analyst/Programmer
I worked within the Application Services department. My role was as a member of a team of developers who produced client/server application solutions for various customers, predominantly large corporate and government. I had the opportunity in this time to learn and use a wide range of technologies and developed strong work practices based on sound development methodologies.
Projects I was involved in included:
Department of Treasury and Finance — Forward Estimates System: July to December 1998
Supported and enhanced an existing application that was written in-house. Performed analysis and development for several significant enhancements to the FES application. Programmed extensively in PowerBuilder/PFC and Oracle PL/SQL.
Department of Human Services — CAPWORKS: July 1997 to July 1998
Developed an object based client/server application to assist the Capital Management Branch (CMB) of DHS in managing the financial cash flow and milestone commitments of various construction and capital works projects. My responsibilities within this project included assisting in the development of the functional specification, consultation on technical specifications, maintaining and controlling the physical database design, change request management, and the design and implementation of the data conversion from the existing legacy system.
State Revenue Office — Pay-roll Annual Adjustment Diskette: January to June 1997
Developed an application assisting SRO customers to produce correct Pay-roll Annual Adjustment forms and thereby reducing the high rate of errors that SRO customers experienced in filling out these forms. I was responsible for the technical design and development of an MS-Windows (3.1x, Win95, WinNT) application with a “wizard-like” interface. The application was developed in Delphi to ensure reliability on thousands of different computers around the state and nationally. Diskettes were distributed to 16,000 SRO customers and 3,000 CPAs. The SRO received numerous letters of praise for providing a service that greatly simplified a complex process.
Australian Unity — Front Office: March to December 1996
I was involved in the development of an Australian Unity Front Office system to manage customer information and act as a user-friendly front end to several legacy insurance and building society systems. Specifically, I worked on the implementation and testing of many components of the system. I designed and implemented a background batch processing system to interface with other internal systems inside Australian Unity and provided trouble-shooting on many multi-user race condition issues. I programmed extensively in PowerBuilder and Microsoft SQL Server (Tesseract SQL).
Toyota Finance Association — Data conversion for new leasing system: January to March 1996
Designed and implemented procedures and scripts to perform data conversion to new database requirements. The process involved design and implementation of programs and scripts to validate and load flat text extract files into a SQL Server database, and convert data to correct table structures and used C++, MS-DOS batch files and SQL Server.
Victorian Curriculum and Assessment Authority (formerly the Board of Studies) — Assessment Processing System: March to December 1995
I aided in the design and construction of the Assessment Processing System, a Client/Server solution to manage VCE processing from enrolment through to final VCE assessment. I was dedicated to this project through the design, construction and implementation phases and was involved in initial support of the system. This project successfully met the required implementation dates and performance standards. I used C, PL/SQL and Oracle including database administration and tuning.
In mid-years of 1996, 1997 and 1998 the customer specifically requested me to assist in several short-term projects implementing feature enhancements to the APS system.
30/3/1992 — 24/3/1995 Software Engineer
As a member of the Design and Development Department of the Integrated Communication Products Group, I was involved in the design, implementation and testing of software in individual and group projects, which produced software for NEC Paging systems. The product was designed for the Japanese market as a cooperative project between NEC Japan (real-time embedded system hardware development) and NEC Australia (embedded system software development).
I spent a total of approximately seven months in several visits to Tokyo to liaise with local engineers in requirements analysis, design and integration testing.
In developing paging systems, I was involved in the following:
Academic record available upon request.
Bachelor of Computing (Digital Technology)
Monash University, 1989 — 1991
My final year project was the design and implementation of a computer controlled signal generator. Using an IBM PC, the software could generate any sort of periodic waveform and then down-load the sample points to the hardware via the parallel printer port. The hardware could then be controlled via the PC to control waveform output and frequency.
Most of my training after my university studies would be considered “on the job” such as figuring out how to use java servlets or such, however I have managed to get some formal training in along the way:
| PowerBuilder Foundation Classes PowerServe Pty. Ltd. |
21st — 22nd July, 1998 2 days |
|
| Effective Software Testing Australian Computer Society |
20th — 21st Oct, 1997 2 days |
|
| Administering an Oracle 7 Database II Oracle Training Centre |
27th Nov — 1st Dec, 1995 5 days |
|
| Administering an Oracle 7 Database I Oracle Training Centre |
23rd — 27th Oct, 1995 5 days |
|
| Oracle RDBMS, SQL, SQL*Plus and PL/SQL Oracle Training Centre |
15th — 19th May, 1995 5 days |
|
| Object Oriented Design Pearcey Centre for Computing |
Semester 2, 1994 30 hours, Credit+ (70 — 74%) |
|
| C++ Programming for C Programmers Pearcey Centre for Computing |
Semester 2, 1994 30 hours, High Distinction (85 — 100%) |