Resume - MichaelAaronson.com

advertisement

Michael Aaronson

519 Great Western Highway, Faulconbridge NSW

Mobile: 0419 482 837

Email: MichaelAaronson@BigPond.com

Resume

March 2014

My current strengths are:

Creation and maintenance of ASP.NET

websites, using Visual Studio , C# , and SQL Server

VBA addins for Word, Excel, Access, Outlook and FrontPage.

A summary of skills is at the end.

Experience

Access, ASP.NET, C#, Drupal, Entity Framework, Excel, JavaScript, LINQ, Moq, MVC,

Ninject, Plone, Silverlight, SQL Server, VBA, Visual Studio, WCF, WPF;

Expression Web and Blend, PowerShell, Visual Studio

The Greens, Erskineville NSW and Canberra

July 2010 - present

Maintained and enhanced ASP.NET

websites. This included improving the ability of users to add comments to each page, so they could be filtered by topic, and sorted by title and date.

Added a discussion area on taxation, using MVC3 , including the Entity Framework, LINQ, and the RAZOR syntax.

Migrated macros from SharePoint Designer to Expression Web. This involved translating them from VBA to JavaScript.

Wrote WPF application for desktop and Silverlight application for website, to maintain a contacts database and calendar of events. NHibernate used to persist the data to a SQL Server database.

Migrated documents from Drupal website to Plone for a Greens Senator. Wrote PowerShell script to automate the process.

Set up a wiki website for the Economics Working Group.

Migrated data from the Australian Parliamentary website to the website of an organisation that monitors the pay MPs are entitled to receive. Included use of a " screen scraper " program to extract the data from the Parliamentary website, and a web robot , to enter data into the other website.

Migrated SharePoint 2007 website to SharePoint 2010 , and wrote InfoPath forms for entering data.

Developed a website in MVC5, using Visual Studio 2013 . It enables administrators to maintain

11 tables, where the relationships between the tables are rather complex. The application uses

Entity Framework 6 , LINQ , RAZOR syntax, Dependency Injection ( Ninject ), and unit testing with mocking ( Moq ).

 Upgraded the members’ websites to ASP.NET 4.5

. This required migrating the files and data to a different server. Consolidated the connection strings.

Wrote a LightSwitch desktop application so office workers could easily update contacts data, using Silverlight .

Expression Web, MailChimp, TryBooking, WordPress

Climate Action Summit, Glebe NSW

June – July 2013

Maintained the public website in WordPress .

Maintained the booking system in TryBooking .

Used MailChimp to send out announcements to 800 people. Consolidated separate lists into one single lists, with multiple tags classify the records. Eliminated duplicates.

Used Expression Web to format the pages for the website and for the mailouts.

Helped with the IT needs during the two day event.

Winforms, .NET, C#, Visual Studio, SQL Server,

Excel, Access, VBA

The Lake Corporation, Willoughby NSW

May-June 2010

Helped develop a windows program to help process credit card applications .

Wrote the preprocessor part of that program. It operated on a separate thread in the background. It read the data from the original credit card application, from SQL Server, and ran a " screen scraper " - a web browser module that accessed credit bureau reports, extracted the appropriate fields from the screens, and stored the results. A proprietary "decision engine" evaluated the results, set scores for the application, and decided what the worker on the telephone should do next in order to verify and process the application. The program included a

"predictive dialler" to call the appropriate people up.

The coding was done in C# , using Visual Studio 2008.

Wrote a code generator , in Excel, using VBA. It generated C# code that "bound" all the controls in the program to a collection of internal variables. When the user changed any of the controls, the variable was automatically updated, and the results propagated to any other controls that depended on that variable. The generator needed the names of the relevant controls, so I wrote a "utility" project in C# to obtain them. The variables were named after relevant SQL Server columns, so I wrote a VBA module to extract the names, types, and sizes of these columns.

Used a lookup function in Excel to detect any variables that didn't have matching columns, so they could be corrected.

Wrote VBA modules in Access to generate test data, in SQL Server, and populate the fields with meaningful values, to make it easy to see if the correct values were getting through.

Some of this was done under extreme time pressure , which required me to take "shortcuts" sometimes. I did this carefully, in order to minimise the risk of making a mistake.

ASP, ASP.NET, C#, SQL Server, WPF, Drupal, DotNetNuke, Kentico,

Expression Web, SharePoint Designer, Visual Studio

The Greens, Erskineville NSW and Canberra

August 2008 - April 2010

Modified the Contacts and Office bearer data to meet the needs of the National Office.

Wrote web forms, which are used by an administrator to update people’s contact details, and to link them to the various office bearer and committee positions.

Wrote web pages to display the contacts and office bearer information on the members’ websites.

This included writing global classes (in App_Code) and a User Control, so the web page for each committee could include a list of that committee’s current members.

Wrote a discussion forum in MVC2 for the members’ website for the discussion of local government issues. Users could add topics. Other users could add comments to each topic, and comments on comments, and so on.

Maintained and enhanced a members’ area on the public website, using Drupal 5 and 6 with

PHP 5 and MySQL 5.

Migrated two large websites to ASP.NET 3.5 and SQL Server 2008.

Wrote a Windows Presentation Foundation (WPF) application to maintain database of economics documents.

Used AJAX on a web page to display the parts of the Commonwealth budget that the user wanted to see.

Developed demonstration sites in DotNetNuke, Kentico, and Drupal, in order to investigate the migration of the NSW and Australian Greens members' websites to a content management system (CMS).

Used JavaScript on web pages showing meeting agendas that displayed the details on proposals when the user clicked on the proposal titles.

Developed models in MATLAB and Simulink and Excel to estimate Australian population, and its effects on the environment.

VBA, Excel

Karridale Pty Ltd, Sydney

July 2008

Developed a program in Excel VBA to open thousands of Excel workbooks, and extract the values in specified areas of specified sheets.

The lists of workbooks, worksheets, and cells were maintained on an Excel spreadsheet so they could easily be changed.

The program was written and delivered in one day.

The program was implemented as an Excel form, so the user could see how the program was progressing.

It had a place for trace and debug output, which could be turned on if necessary.

The program anticipated possible errors, and was tested carefully. It worked the first time it was delivered.

ASP.NET, C#, iMIS

Glass Onion, Sydney

January - June 2008

Developed feedback and subscription web forms for the new Clubs NSW websites.

Integrated the forms into the website, using the iMIS content management system.

ASP.NET, C#, SharePoint 2007, SQL Server 2005, VB.NET, VBA

The Greens, Erskineville

July - December 2007

 Maintained national and state members’ websites (.NET 2.0).

Developed a SharePoint 2007 collaboration website for the Economics Working Group.

Extracted data from the 2007-08 NSW Budget, converted it to a normalised relational database, and formatted it as a summary table and pivot table, using VBA macros for Word, Access, and

Excel.

ASP, VBScript, SQL Server, JavaScript, VBA, Excel

Glass Onion, Sydney

Nov 2006 - June 2007

Developed an intranet for Westpac by configuring and enhancing a content management system

(CMS), which was written in ASP and VBScript, and used SQL Server.

Designed a workflow application to fit into the CMS, so bankers could place orders for customised advertising materials, and the art department could produce and deliver them.

Helped design a contact database for the CMS, so bankers could develop a list of leads, and send customised emails to them.

Wrote a class in VBScript that extracted data from a SQL Server table and exported it as a comma delimited file, which users can import into Excel.

Maintained and used JavaScript libraries to validate forms and allow the user to sort tables by clicking on the headings.

Wrote a VBA macro that extracted and adjusted data from an Excel file, containing RAMS home loan products, so the information could be imported into a SQL Server database.

ASP, ASP.NET, C#, SQL Server 2005, VB.NET, JavaScript, VBA

The Greens, Erskineville

Oct 2005 - Oct 2006

Maintained national and state members’ websites, and migrated them to .NET 2.0.

Analysed the Australian Greens 3 year budget.

Wrote VBA macro to convert the budget, and the strategic plan, from Excel to HTML for the members' website.

Wrote JavaScript on web pages for collapsible outlines and expanding menus.

Produced XML and RSS feeds for the events calendar, so they could be used by a local Greens website, and to encourage sharing of information.

Access, Excel, VBA, DTS

ABN-AMRO Bank, Sydney

September 2005

Designed a new Access database for use as a contact management system.

Imported and transformed existing data from two linked Excel spreadsheets and an existing

Access database.

Designed the forms to maintain the data.

ASP, SQL Server, Typo3 CMS, Excel

Amnesia Group, East Sydney

August 2005

Modified the ASP page that processes customer logins to the Ikea website, so the correct response could be returned when the customer hadn't registered, when the password was correct, and when the customer hadn't validated their registration by responding to the confirmation email.

This included creating a test environment before updating the production site.

Designed a web form for job applications, and the ASP page to store the results on a SQL

Server database.

Modified the home page of a website using Typo3, an open source content management system.

This included examining the Typo3 script that created the banner, in order to decide whether to put the changes there or in the content area.

Added columns to an Excel spreadsheet that looked up data in another sheet.

This was all done in a fast paced envirnment, with limited information to start with, and where care was required because live sites were involved.

Excel, VBA, TM1 (Data Warehouse

Big W, Pennant Hills

August 2005

Migrated an Excel application to another computer.

The application presented daily sales, summarised by retail store and by product category.

Documented how the application worked.

The application got its data from a text file and configuration sheets in the workbook, stored the historical data in another workbook, and updated a third workbook with the results, which was sent to the users.

Examined the existing TM1 data warehouse, and estimated the effort required to use this data instead of the text files currently used.

SQL Server, DTS, OLAP

Lion Nathan Brewery, Lidcombe

July 2005

Modified DTS packages that moved data from a manufacturing and sales database (MFG/PRO) to a SQL Server data warehouse.

Modified Analysis Services packages that defined the cubes that used this data warehouse.

Wrote a detailed technical specification on my work, including recommendations on how to maintain the consistency of the data warehouse.

Access, VBA, SQL Server, Excel

NSW Cancer Council, Sydney

May 2005

Created form, and supporting business classes, in an Access project, to go through the lines of a bank statement, match the deposit slips with fundraising events, and credit the appropriate accounts.

The bank statement was provided in the form of a comma separated variable (CSV) file.

I did some analysis of this file, and the output of the program, using Excel, to confirm the program was working.

ASP, ASP.NET, C#, Dreamweaver, FrontPage, SQL Server, VB.Net, VBA

The Greens, Erskineville

Jul 2002 - April 2005

Designed, created and maintained four websites using FrontPage.

Many of the pages on these websites display information from a SQL Server database, using

ASP and ASP.NET coding.

Extracted data from the NSW and Commonwealth budgets and displayed them on a website.

Wrote extensive Visual Basic for Applications add-ins for Microsoft Word, Excel, and Access to extract the budget data from Adobe Acrobat and Microsoft Word files.

Wrote pages in ASP.NET with C# to display this data. The user was able to drill down to see the data at portfolio, agency, and program levels of detail.

Wrote a Web Service to provide access to this data.

Consolidated the data into an OLAP Cube, which users can download and examine as a pivot table in Excel.

Performed economic analysis, using Excel, MATLAB, and GAMS.

Wrote several add-ins for FrontPage, including one which added a place on the page where the user can add their comments. The add-in did this by inserting a record in a SQL server database, and modifiying the ASP coding on the page to refer to that record. Also wrote add-ins to insert bookmarks into headings and create an indented table of contents for the page.

Wrote Outlook add-in which goes through an email folder containing media releases, extracts the information from each message, displays it to the user for editing, and stores the information in a SQL Server database. Wrote the ASP page to display these media releases on a website.

Also wrote add-in to display email addresses stored on a SQL Server database, so emails could be sent to these people.

Developed pages to coordinate the review and updating of over 40 policies.

Pages written in ASP.NET with VB.NET.

Pages are automatically generated for each record in a 'Policies' table in a SQL Server database.

Each page shows links to the current and proposed versions of the relevant policy, a list of interested people, and a place for people to put their comments.

If the page has been accessed using the Policy Coordinator's password, this is detected, and the page shows additional information and links, so the Policy Coordinator can schedule workshops for the policies, and make other changes.

Helped maintain two additional websites using Dreamweaver MX, and FrontPage 2003, which now works with Dreamweaver template (.dwt) files.

Maintained four email discussion lists.

Participated in extensive discussions on who should have access, and how they should be maintained.

Created a SharePoint Team Services website to allow MPs and their staffs to share information.

Maintained this site using FrontPage 2003, which makes it easy to create customised pages and insert the SharePoint components.

Access, ASP, VBA, XML

BusinessLink, Liverpool

May 2004 - Jul 2004

Created an ASP page to process an online survey form.

The results were formatted into XML and sent as emails, using a remote mail server.

Wrote an Access application in VBA to open and process these emails, store the results, and provide reports.

Wrote an XML parser in VBA as part of this project.

 Used Microsoft Virtual PC to duplicate the user’s environment, for development and testing of the application.

Wrote the installation, configuration, and troubleshooting guides for the application for the help desk.

Clipper, dBase

Access Industries, Seven Hills

May 2002 - Jun 2002

Converted programs to transmit credit card sales from branch offices, and to transmit them to the bank. This required great care, and extensive testing, to make sure it worked correctly.

Access, ASP, Excel, FrontPage, SQL Server, VBA, Word

The Greens, Sydney

Jan 1998 - Apr 2002

Set up and maintained a private password-protected website, for members, using FrontPage

2000. Wrote VB program in Word to convert RTF files into HTML, including a table of contents based on the headings.

Wrote VBScript, including a recursive procedure, in active server pages, to display announcements, an event calendar, and discussions. All records were stored in a SQL Server 7 database. The active server pages enabled members to view, insert and modify the items.

Wrote a VBScript procedure, as an include file, so it is easy to provide places on pages where users can add their comments.

Developed an eCommerce application for the website, including secure entry of credit card details.

Used Enterprise Manager, and an Access Project, to remotely maintain the SQL Server database.

Set up and maintained accounting records, using QuickBooks Pro. Extracted data into Access, and then into Excel, for budget discussions.

Wrote ASP.NET pages to display contact details for local groups, with forms so authorised people could modify it. Wrote a web service for this data, so it could be safely accessed and modified, without exposing the other SQL Server data.

Access, ASP, FrontPage

Optus, Roseberry

Mar 2001 - Apr 2001

Developed a database for the help desk, listing where they should refer people if further support is needed. This included implementing the Access multi-user security facility.

Developed databases for an asset register. The data entry forms referred to a table to find out the fields that were needed for the item being entered, and formatted the form accordingly.

Developed an expense report database along similar lines.

Fixed bugs and made enhancements to a database that listed the training seminars, and the people attending. Corrected errors in the way the tables were indexed, which required careful checking to make sure existing forms and reports weren’t affected.

Wrote a document retrieval system. This was implemented as a website on the intranet, using

ASP pages. Recursion was used so documents could be put into categories within categegories.

All this was done in the very short timeframe allowed.

Access, dBase, Clipper, Visual FoxPro, Visual SourceSafe

Access Industries, Seven Hills

Jul 1998 - Nov 2000

Maintained and enhanced a complex telephone sales system. It had been developed over the years by several programmers in dBase and Clipper, and had dozens of tables and indexes and over a hundred program files. There were programs running on three supervisor's computers, linked by daily transfer of files over the phone, and several seller's computers, linked by hand carried floppy disks.

Wrote a recursive program in Access which went through all the dBase program files and mapped which program called which, and which tables each program used. This was an essential step in making sense out of it all. Used Visual Source Safe to monitor changes.

Access, Visual Basic

FreightCorp, Parramatta

May 1997 - Mar 1998

Maintained and enhanced the Project Management System, which tracked the corporate projects for the project managers. The main code was in Visual Basic and the data was in Access 2 tables. Modified input forms and reports. Obtained special fonts so the proportional font sections looked like the rest of the report.

Maintained and enhanced the Contracts Management System, which tracked the contracts which had been written to accomplish the projects. In Visual Basic with Access data.

Designed a report for the Contract Management System using Crystal Reports.

Maintained and enhanced the Train and Locomotive System, which tracked locomotives, trains, crews, journeys, and fuel. In Access with lots of Access Basic code. Discovered inconsistencies in the database, which I then cleaned up using complex queries. Modified input screens and reports. Archived old data, which also required complex queries. Designed the procedures to reconcile fuel withdrawals with daily totals, and report serious discrepancies.

Rewrote the Wagon Maintenance program, which tracked and billed for repairs to wagons.

Linked it to a new pricing system. In Access.

Access, Excel, Outlook, VBA, Word

Whistle Project, Sydney

Oct 1996 - Apr 1997

Upgraded files to Access and Word 97.

Did maintenance and some enhancements to a bibliography database, and to a project database that collects information, in various categories, about a community development project.

Converted files containing contact details and tasks, and imported them to Outlook, which is the new program for contacts and scheduling that Microsoft has added to Office 97.

Wrote a Visual Basic procedure in Access to reformat the memo fields in the project database.

They had line breaks at the end of each line, instead of at the end of each paragraph.

Wrote a Visual Basic procedure in Word to look up a contact in Outlook and create a letter to that person.

Maintain financial data with QuickBooks. Converted QuickBooks reports to Excel, where I added some further calculations and then embedded them in a Word document.

Created a website using Microsoft FrontPage 97.

Access, MapInfo, Visual Basic, Visual C++

Telstra Mobile Phones, Parramatta

Aug 1995 - Sep 1996

Maintained and enhanced several programs which analyse and summarise the complex raw data generated by the equipment that handles mobile telephone calls. I inherited the programs as immense program files that had been written in an ad hoc manner by engineers, which I documented and broke into modules to make them more maintainable. Migrated many of them from Borland to Microsoft Visual C++ - our standard compiler. Many had versions for

Windows and two flavours of UNIX, with many differences between them. I persuaded them to drop support for platforms where they weren’t really needed, and was able to strip out almost all of the differences by talking to the engineers.

One of these programs sends data to Mapinfo, to trace the path of the vehicle which took the measurements.

Maintained and enhanced programs in Visual Basic that analyse call records for fraud. Used diplomacy to provide quick service to the user while providing the required documentation to the administrators of the work being done.

Analysed, documented, and evaluated an immense and complex program, called Mammoth, that was written by an engineer. Persuaded all involved that the user should continue to maintain it.

Access, MAPI, ODBC, Oracle, Visual Basic

Telstra Payphones, Parramatta

Mar 1995 - Aug 1995

Maintained and enhanced the Payphone Refund System. This was an Access front end to an

Oracle database. It allowed the operator to approve or reject refund claims, and write appropriate letters and reports.

Maintained and enhanced a 'comms robot'. This was a Visual Basic program that ran continuously in the background. It used MAPI calls to open mail sent to its mailbox and save attached files. It then opened and processed these files, and posted them to an Oracle database.

Wrote extensive user and maintenance documentation.

Wrote a screen scraper which used an IBM 3270 terminal emulator to connect to a mainframe, navigate through the menus, and then navigate through the fields on the forms and store the data in an Oracle database.

I also sometimes ran and examined the backend script, on a Pyramid, written in SQL*Plus.

Access, Excel, VBA, Word

Gaia Project, Glebe

Jan 1995 - Feb 1995

Did a statistical analysis on information embedded in 72 Word files. This required writing a

Word Basic macro to extract the top level headings from all the files. These were then put into an Excel spreadsheet and classified in two ways. An Excel pivot table was then created to tabulate the results.

Extracted similar information, for a different time period, from an Access database I had already created, using a crosstab query.

Developed a procedure for extracting notes from a HP 100LX palmtop computer to the PC.

Wrote instructions on converting the notes database into a text file on the palmtop and sending it to the PC via the serial port. The information in this file was then added to an existing Access

database by importing it to a separate table where it was processed and cleaned up, and then appending it using an append query.

Used mailmerge in Word to create a document consisting of the above notes.

Access, ODBC, Visual Basic, Visual C++

Streets Ice Cream, Turrella

Nov 1993 - Dec 1994

Wrote a windows program to write large sticky labels with barcodes to go on pallets. Developed database of products, etc., on Access. Program written in Visual Basic and Visual C++. The labels were written on a Zebra industrial laser printer. Developed a module to interface, through the serial port, with a laser scanner, which was used to read and verify the labels. Extensive investigation of ODBC drivers and files was required to find a combination that worked.

Investigated use of analogue/digital board.

Migrated existing DOS programs from Microsoft C 6.0 to Visual C++. One made production reports. The other sent signals to a Texas Instruments programmable logic controller (PLC) to make ice cream. The operator selected the recipe, and the program operated the valves in the proper sequence to bring together the required ingredients. Made some modifications to both programs.

The Zebra printer, laser scanner, and PLC all had programming languages that I had to learn.

Maintained two Microsoft Cobol programs, which write production reports..

Access, Visual Basic, Word

Gaia Project, Glebe

Jul 1993 - Oct 1993

Migrated the telemarketing and information retrieval systems I wrote in 1992 into an integrated

Microsoft Office application. General PC support. dBase

Westpac, Sydney

Jun 1993 - Jun 1993

Enhancements to the accounting system I wrote for them in 1989.

Brought the system back to a clearly defined state, incorporating changes others had made to it.

C, Oracle

ITRON, Sydney

Nov 1992 - Apr 1993

Used SQL*Forms 3, SQL*PLUS, and Pro*C to produce forms and reports for an automated job dispatching system that sends work requests from a mainframe to handheld computers in the field.

Acted as the DBA - setting up and maintaining the database.

Wrote functional and design specifications for the report modules.

C, Oracle

Telecom, Brisbane

Jul 1992 - Oct 1992

Enhanced C and PRO*C modules in the MDF Manager program, which tracks the complex cable connections between a telephone exchange and the outside world and calculates the best ways to make changes to it. My enhancement took the core process for the program, which operated in the background, and split it into multiple processes operating in parallel. This involved a lot of interprocess communication - especially message queues and signals. Used the special UNIX techniques that are required for multiple processes, especially for testing and debugging, such as the incorporation of special test messages and using the debugger in

multiple simultaneous sessions. Ported the application, as source code, from an IBM RISC AIX box to a 486 SCO UNIX box, which required building portability into the program, mainly through the use of environment variables and careful design of the make files.

Used SQL*Plus, SQL*FORMS 3, and ORACLE export and import to create and examine the test database.

C, LIGHTSHIP, Oracle, Visual Basic

Telecom, Melbourne

Mar 1992 - Jul 1992

Wrote PRO*C modules to extract, validate, and load financial, operating, and productivity data from 12 different ASCII file formats into an ORACLE MIS database. Tested the program using a rigorous Method 1 procedure that exercised every branch in the logic. Used ORACLE, including SQL*Loader, and Visual Basic with Q & E toolkit, to create and examine the test database.

Learned Lightship, a GUI front end on the PC for ORACLE. Tested the Lightship MIS front end, in a very probing manner, finding over 90 diverse errors, many of them serious, and verifying their correction.

C++, dBase, Pascal, SuperBase, Visual Basic

Gaia Project, Wahroonga

Sep 1991 - Feb 1992

Advised on hardware and software purchases, including a faxmodem and two scanners.

Installed applications in Windows environment. Used Windows Resource Kit and other utilities to improve the memory management and speed of Windows, after taking the Microsoft seminar on this topic. Established a research database, including text and scanned images, so information can be stored and retrieved. Established a telemarketing system to service requests for information. Evaluated the latest windows versions of the major word processors. General PC support, advising when questions arose.

C, Oracle

Telecom, Adelaide

Jul 1991 - Aug 1991

Developed a list-values pop up window to operate under Oracle. It was similar in appearance and function to the list-values box in SQL*Forms 3, which couldn't be used because of the intricacy of the application. Used the other Oracle products to develop a database to test it. The window was carefully coded to be completely generic, so it could be easily applied to existing and future needs. This was done with function pointers and a C++ like program structure.

Oracle CASE also used.

C++, dBase, Pascal, Visual Basic

KW Chemicals, St. Peters

Jan 1991 - Jun 1991

Installed windows 3.0 on a 386 PC. Moved existing PC applications, programs, and data to this platform, using Laplink III.

Developed a telemarketing system as a Windows 3 application, using Borland C++ and the

Whitewater Resource Toolkit. An object oriented approach was used, and a dynamic link library

(DLL) was created. Some coding was done in Pascal for Windows, Visual Basic, and Object

Vision in the process of deciding which language to use.

Developed a planning system on dBASE IV, involving linked files for tasks, projects, and status codes.

C, Clipper, dBase

A C Nielsen, North Ryde

Oct 1990 - Nov 1990

I clarified the user requirements, and then I designed, coded, and tested a program in Microsoft

C 6.0. This program calculated and reported the movement of viewers from one TV station to another.

This program was for use on the user's PC, in competition with one from another company, so it was essential that the program be written as quickly as possible, that it run quickly, and that it use a minimum of disk space. This was in addition to the usual requirement that the program be easily maintained by someone else. Extra programs were written to compress the data (by a factor of 10), and to calculate a few extra fields, so the program would use a minimum of disk space and run as quickly as possible.

I was responsible for developing the entire system, which involved the design of a sequence of mainframe and PC based programs and data files. This required that I clearly define my design, and that I extensively consult with the user representative.

CMS was used extensively on the mainframe, on a 3270 emulator, to extract the needed data, using JCL and EXEC programs, which I wrote or modified. The data was then downloaded to the PC.

Linked lists and the portable C binary search functions were used, along with a finite state automaton.

C

RTA, Sydney

Aug 1990 - Sep 1990

Wrote C programs and UNIX shell scripts to translate data files of an expert system from a

PROLOG PC-based prototype to the UNIX based version written in C. This required use of

Telnet and FTP, and other TCP/IP procedures to transfer the files around the network. The

PROLOG format wasn't documented, so I had to include special error detection procedures in my program.

Wrote C functions which extracted records from the translated files and put them in a linked list, for display and further processing by the calling program. There were two different types of records, and the functions included a linked list of templates, which enabled the calling function to specify which records were to be included. This required that a test bed be quickly put together, to make sure the functions performed well.

Designed a composite window in X-windows/Motif.

C, Lotus 1-2-3, Oracle

Intercept Foundation, Newtown

Jul 1990 - Aug 1990

Continuation of work on the information retrieval database, for research purposes, described below.

Clipper

Kimberly-Clark, Milsons Point

Jun 1990 - Jun 1990

Added a report module to an existing dBASE program, which stores and reports on sales of their paper dispensers. My module allowed the user to specify which records were to be reported, the sort order of the report, and whether the report was to go to the screen or printer.

The module was written flexibly so the user could refine their requirements after seeing preliminary results. The user interface was standardised between modules, and menus were made easier to understand and use. The program was compiled under Clipper, and was designed to operate on a Novell network.

Hardware

Bankers Trust, Sydney

May 1990 - May 1990

Installed Hyperram extended memory boards and 3-COM ethernet cards on IBM AT and PS/2 computers, and installed the computers as nodes on a PCAA network.

C, Lotus 1-2-3, Oracle

Intercept Foundation, Newtown

Feb 1990 - Apr 1990

Developed a database for use in connection with the Federal Election, using Oracle, with linked files for electorates, cities, individuals, candidates, and electorates. A procedure was developed for determining a person's electorate, based on their address, using Pro*C. Progress in contacting individuals and distributing election materials was tracked through reports by electorate. Other reports were generated to plan strategies, answer enquiries, and provide needed information in suitable sort orders and formats.

Developed an information retrieval database, for research purposes, using Oracle, with linked files, for books, clippings, fliers, groups, individuals, notes, periodicals, and serials. dBase, Lotus 1-2-3

KW Chemicals, St. Peters

Jan 1990 - Jan 1990

Developed a product pricing system, using 1-2-3, including the multiple worksheet feature of release 3. Most of the data was stored in dBASE files, which were linked to the worksheets using the release 3 database driver. Macros were used to generate user menus and write reports.

C, Ingres

Wheelease, Burwood

Nov 1989 - Dec 1989

Maintained and enhanced an automobile leasing system using REFORM, a 4GL which depends on extensive C programming to tie the pieces together. The system was basically a customised accounting system, with general ledger accounts, accounts payable, and accounts receivable.

Functions included terminal enquiry and update, invoicing, making reports, budgets, recording of credits, and the automatic entry of periodic charges and payments. dBase

Westpac Bank, Sydney

Jun 1989 - Sep 1989

Developed an accounting system to track purchases and sales of 35 foreign currencies, and maintain balances in each one, including their Australian dollar equivalents. Features included: enciphered password access with a privilege profile for each user; provision for input and processing by batches; two default exchange rates for each currency; extensive reports; interlocks to, for example, prevent posting a batch before it was listed; revaluation of the currencies based on the current exchange rate, with a trial balance to check before committing; and a history file with detailed reporting as specified by the user.

Another system, which monitored shipments of currencies for insurance purposes, was upgraded from dBASE III to IV, and logic was inserted so one module, which required several hours each month, could be run automatically.

ADA, C++, LISP, Oracle

KW Chemicals, St. Peters

Jan 1989 - May 1989

Performed a systems analysis on the business: clarified exactly what problems the study was intended to solve, conducted a wide ranging examination of the business, and concluded with recommendations which were accepted and implemented by management.

Recommended the hardware, software, and procedures needed to improve the accounting system, which was on Lotus 1-2-3.

Created a program which simulates chemical reactions. This was used to scale up production to commercial quantities from preliminary laboratory studies.

Developed an accounting package in ORACLE, with general ledger, accounts receivable, accounts payable, inventory, and order processing. Wrote the procedure manual, and provided training.

The systems analysis and the design work on the programs were done on an Apollo workstation, using the CASE tool Software Through Pictures (STP).

C

Homecare of NSW, Parramatta

Nov 1988 - Dec 1988

Developed and implemented administrative procedures for their UNIX system, including security, the setting up of new accounts, and backup. Started the procedures manual. Wrote the procedures after consultation with the person appointed to be the system administrator.

Rationalised the existing files and accounts. Did troubleshooting

ADABAS/NATURAL, dBase

Intercept Foundation, Newtown

Aug 1988 - Oct 1988

Set up a database of individuals and organisations. Merged existing databases into the new ones, which required data conversion, and procedures for removing duplicates. Wrote programs to make customised reports.

Analysed statistical data with ADABAS/NATURAL 2.

C, Clipper, dBase

Commonwealth Government Centre, Sydney

Oct 1987 - Jul 1988

Set up the office computers for two federal Senators.

Consulted with the Senators and their staff, analysed their requirements, and selected and installed the software.

Wrote an accounting package in C.

Designed and implemented databases in dBASE and Clipper, and integrated the software through user-friendly menus.

Provided user training, answered queries, wrote a tutorial manual, and installed tutorial programs and an online help facility.

Diagnosed and corrected hardware faults and installed cards.

Created a customised printer driver for an 'Impact' brand laser printer.

Performance Coverage Analyser, Testing

NSW Department of Health, Sydney

Jun 1985 - Sep 1987

Maintained and enhanced the program that stores medical laboratory data for most hospitals in

New South Wales.

Developed automated procedures to convert this large program (1000 modules) from BASIC+ to VAX BASIC.

Improved performance and made the modules easier to understand and maintain by making them structured and standardising record definitions.

Maintained and enhanced the DCL command files that integrated the programs into a menudriven system.

Maintained and operated an in-house system (FABMAN) that automated the compilation and generated the structure charts directly from the source code.

Liaised with the users, and arranged for system tests.

ADA, Basic, C, C++

Energy Economics, Berkeley, California

Nov 1984 - Feb 1985

Provided the computer support for a project that analysed economic and other data from electric power companies, in order to develop a model that explains how cost-saving innovations spread through an industry. Responsible for implementing various economic models, of increasing complexity, making adjustments as necessary, and presenting the results in graphical form.

Dramatically increased the speed of a program written by one of the users.

C, Informix

Pacific Telephone, San Francisco

Feb 1984 - Oct 1984

Worked as part of a development team on a management information system that assigned jobs

(such as installing a telephone) to available work crews. Responsible for the scheduling module, which was the core of the system. It was quite complex, and I selected a finite state machine model (an object-oriented technique), with linked lists, in order to make it understandable and flexible. With this working model, I liaised with the users until the specifications, initially quite incomplete, were finalised and documented. Wrote several data-entry and report modules.

C

NCR Corporation, Redwood City

May 1983 - Jan 1984

Worked as part of a development team on the control system for a Computer Output to

Microfiche (COM) machine that was manufactured by the company. The control system resided in a personal computer, and communicated with a microprocessor card in the machine.

Responsible for implementing all the terminal displays on the project, and implementing the error log, for use by the customer engineers. Provided instruction to the others on the team, who were quite new to the C language.

ADA, Basic, C, C++

Energy Economics, Berkeley, California

Aug 1979 - Apr 1983

(Project described above.)

Fortran

Engineering Science Inc., Madras India

Jul 1977 - Feb 1979

Data processing manager: responsible for all computer work on a project that designed a water supply and sewage system for Madras India.

Analysed the computational requirements and liaised with authorities to obtain use of a suitable computer.

Selected and installed the program for the water supply system.

Wrote the sewage program, based on an algorithm that minimises the cost of flows through a network.

Produced thorough documentation of the programs, including instruction manuals.

Supervised local support staff, and recruited and trained the Indian engineer who took over my work.

Assembler, Fortran

Engineering Science Inc., Berkeley California

Jan 1968 - Jun 1977

In charge of data processing for large and complex environmental projects such as groundwater basin management, bay and harbour pollution, solid wastes management, industrial sewage treatment, and design of a pipeline for transporting sludge.

Responsible for analysing the problem to find the scientific and engineering principles involved, translating the analyses into computer programs, and running and adjusting the programs to fit the real world.

Designed and managed large program and data files.

Knowledge of advanced computer methods, advanced mathematics, civil engineering and hydrology was required.

C, Fortran, Linear Programming, Pascal, Statistics

Univ. of California, Berkeley

Sep 1965 - Dec 1967

Developed equations and wrote programs to determine the concentration of pollutants in San

Francisco Bay.

Independently developed a generalised solution to the problem, so answers under different conditions could be found without going back to the computer.

Wrote parts of the final report, including instructions for the general solution. Developed a graphical presentation, which made the results easier to understand.

Performed statistical analyses on data, including least squares fit to cyclical phenomena and nonparametric methods.

Knowledge of partial differential equations and hydrology required.

Summary of Skills

Education

Master of Engineering, University of

California, Berkeley.

Bachelor of Arts, Johns Hopkins

University.

Structured Programming and Data

Structures courses at University of

California, Berkeley.

Short courses in Microsoft Office97

Development, computer aided software engineering (CASE) and object oriented programming.

Databases

Access

SQL

Sybase

ORACLE

ODBC, MS Query

 dBASE, Clipper, SuperBase 4

Lotus Agenda

INGRES, Informix, Q+E

Hardware

Micros: IBM compatible and PS/2,

Macintosh SE, 6800 Microprocessor

Minis: Pyramid, NCR Tower, PDP 11/70,

HP 3000

Mainframes: IBM 4341, CDC 6400, DEC

VAX 780 & 6800, IBM 370

Other: Apollo workstation

Software Packages

Office Professional and Developer

MS Project

FrontPage

Norton Utilities

Run Time Libraries

System Calls

Linear Programming

Network Optimisation

Terminal Display

Scientific Subroutines

Operating Systems

Windows

UNIX Windows3.1 MS-DOS 6.2

VMS, VM/CMS, OS/VS1, MVS

CP/M, UCSD p system

Windows Programming

Microsoft Visual Studio.NET

Visual Basic, VB.NET

Visual C++, C#

Structured Methodologies

Structured & Object Oriented

Programming

Data Structures

Code Management & Library

Maintenance

Prototyping

Systems Analysis & CASE Tools

Test Drivers & Automated Testing

Applications

Website Development

FrontPage 2002

Active server pages, ASP.Net using VB.NET and C# code

SharePoint, including SharePoint Portal

VBScript, JavaScript

FrontPage XP server extensions

Office XP server extensions

Windows CE Programming

Management Information

Statistical Analysis

Communications

Accounting

Engineering Research

Engineering Design

Process Design

Economic Analysis

Computer Modelling

Visual CE

Embedded Visual Basic

Download