William J. Duncan

bduncan@beachnet.org
+1 416 697-9315

46 Regency Square
Toronto, ON, Canada
M1E 1N3


Summary

Bill Duncan has worked in the computer industry for close to thirty years, started consulting professionally in 1981, and made it a full-time career in 1982. He has a very strong background in Unix and the "C" programming language with close to thirty years experience on many platforms ranging from cross-compiling for embedded controllers, through CP/M, MS-DOS, and Unix/Linux platforms.

Has excellent written and verbal communication skills, along with team management capability. Has demonstrated ability to overcome difficult problems with simple, elegant solutions. Analysis skills are thorough and insightful. Except where external circumstances have interfered, has always delivered projects on time and under budget, managing projects from the requirements stage right through to deployment and maintenance.

Has actively been involved in Linux since 1994, all major distributions including Slackware, Red Hat, SuSE/Novell. Excellent familiarity with all major IP protocols.


Employment And Contract Summary


Dominion Bond Rating Service Limited (2000 - Present)

M.A.C Cosmetics (October 1997 - 2000)

Toronto Dominion Bank (January 1997 - October 1997)

Zeidler Partnership Architects (August 1996 - Present)

Canadian Tire Corp (January 1996 - June 1997)

BeachNet Communications Inc. (November 1993 - Present)

Nortel (Northern Telecom) (September 1995 - December 1995)

McDonalds Restaurants (May 1995 - September 1995)

ISM - Library Information Systems (December 1993 - January 1995)

Goldman Sachs (August 1993 - December 1993)

Pitney Bowes (May 1993 - August 1993)

Sietec -- Siemens Nixdorf (Jan 1993 - May 1993)

Goldman Sachs (June 1992 - December 1992)

The Champlain Society (June 1991 - December 1992)

McDonalds Restaurants (February 1992 - May 1992)

The Royal Bank of Canada (August 1991 - November 1991)

John Rode Data Systems (January 1991 - December 1993)

The Royal Bank of Canada (January 1989 - January 1991)

Pegasus Consulting (January 1988 - September 1990)

Toronto Dominion Bank (1988)

The Royal Bank of Canada (1988-1989)

Online Financial Systems (1987-1988)

Zakrison Systems Inc. (1985-1986)

Paymaster Canada (1986)

Association Management Online (1985-1986)

Ontario Hydro (1986-1992)

CMQ Communications (1986)

TIL Systems (1985)

Ministry of the Environment (1984)

Harlequin Enterprises Ltd. (1983-1984)

Strategy Plus (1981-1984)


Summary of Professional Experience


Dominion Bond Rating Services (2000 - Present)

Serve as System and Wide Area Network Admin in a Senior capacity. Implemented and maintain a network of Solaris and Linux systems in two Data Centres (Q9 and Fusepoint) with failover ability. Maintain all wide area networking using Linux-based firewalls and interoffice VPN's (Toronto, Chicago and New York). Developed email scanning and security and initiated disaster recovery plan.

Zeidler Partnership Architects (August 1996 - Present)

Serve as System and Network Admin in a Senior capacity. Developed their online presence on the Internet, connecting their worldwide offices through Linux-based VPN's. Primary responsibility is to maintain Linux-based routers, firewalls, VPN's and email throughout their organization, based in Toronto, Calgary, Florida, UK, Germany and China. Also maintain their web and ftp services on Linux systems. Developed email scanning and security.

M.A.C Cosmetics (October 1997 - 2000)

Served as the Unix, Linux and MPE Senior Systems Coordinator. Developed a Lights-out system which monitors entire network and pages people responsible with any problems. Developed Y2K readiness plan and a Disaster Recovery Plan.

Toronto Dominion Bank (January 1997 - October 1997)

Developed a strategy for worldwide rollout of an existing securities application. Required becoming intimitely familiar with the X toolkit to develop stateful compression of the protocol to minimize latencies inherent in global access. Other techniques such as database replication and caching were examined and discarded.

Canadian Tire Corp (January 1996 - June 1997)

Developed multi-threaded realtime embedded controller in C on the Alpha Unix platform. Also was called upon to help with Sys Admin of their Unix systems.

BeachNet Communications Inc. (ServerMetrix) (November 1993 - Present)

Have been serving as an email and news gateway since 1990. More than 20 organizations and more than 200 people depended on this service.

Developed a Web Presence for organizations and companies to get online. Developed the network, programming, marketing and creative for the organizations hosted here. BeachNet also provides a domain park (DNS services) for about 40 domains now. Samples of work can be found at: http://www.beachnet.org/.

Nortel (Northern Telecom) (September 1995 - December 1995)

Involved in developing automated system and network administration tools for internal network consisting of Suns (SunOS and Solaris) and HP workstations.

Also did Intranet development for internal communications and system administration tasks. Developed an HTML macro pre-processor package to facilitate development.

McDonalds Restaurants (May 1995 - September 1995

Developed an extensive report on in-house development activities and departmental problems and solutions.

Demonstrated and developed libraries which enabled substantial savings in their "C" language development efforts.

ISM - Library Information Services (December 1993 - January 1995)

Designed and implemented a system which routes and tracks EDIFACT Inter-Library Loan requests over the Internet and/or via uucp; The system parses and translates RFC-822 mail-headers and the EDIFACT strings to update tables for statistical reporting purposes. Developed a sophisticated code generator which is driven by a data-definition table, mapping the hundreds of EDIFACT fields into the various tables.

Performed system (SCO unix) and network management (TCP/IP LAN & WAN) functions, and provided training for staff.

Goldman Sachs (August 1993 - December 1993)

Served as a Unix System Administrator for Network of about thirty Sun workstations with five Sun servers (NFS and Sybase with hot backups, plus a development server). The network ran mission critical applications and required being on call around the clock. Designed numerous preventative maintenance utilities which would warn the administrator of most impending problems before they happened. Also designed and implemented a matchbook application for their accounting department. It replaced an existing system which ran in over an hour, with one which ran in a few minutes.

Pitney Bowes (May 1993 - August 1993)

System administrator for SCO Unix system, as well as training staff. Developed several applications for managing faxes for the system. Also developed a BASIC to C translator for converting an application consisting of 50,000 lines of BASIC.

Sietec - Siemens Nixdorf (January 1993 - May 1993)

Porting X-Windows application written in C to DOS/Windows platform. Required extensive rewrite of major subsystems to be compatible across all platforms.

Goldman Sachs (June 1992 - December 1992)

Developing tools and teaching staff about administering a network of Sun workstations. The tools developed used a mix of "C", awk, Bourne Shell, and sed. They are used for real-time monitoring of the network and resources, for fast response to potential problems.

McDonalds Resaurants (February 1992 - May 1992)

Was in charge of bringing a large project ``back in control''. Evaluated options for source code control, then automated the process of checking in over 100,000 lines of code at the various stages of development. There were over 3300 instances with 1250 separate versions of about 680 modules. Duplicates were removed and the separate versions checked in, in chronological order, and then tested against the originals. Dependencies were also produced for makefiles and for creating ``sets'' of named groups by executable. The process was automated using about 1000 lines of awk which actually wrote the program to process the files.

Designed and implemented a tracing package which could be used to trace through problems at the source code level, which were found during field testing. The system required low enough overhead to be used in production code with little impact.

Also called upon to solve problems in systems the staff were working on but could not solve.

The Royal Bank - CD-ROM Project (January 1989 - January 1991)

The CD-ROM system designed while at RBC was called ``brilliant'' by one of their chief system architects. It is a brand new indexing technique, which is far faster at both indexing and retrieval and with lower overhead than any system known to be available (after several years of searching by the bank). The best available system off the shelf would store slightly more than one eighth as many records, take 40-50 times longer to index (measured in weeks), and would be much slower on retrieval times (up to an hour instead of seconds depending on the complexity of the query).

Also developed the application side of the system for marketing support, including data encryption, smart card support, and the query building dialog.

The Royal Bank - CIT Prototyping System (July 1991 - November 1991)

Designed and developed a prototyping language for the Bank's new CIT (Client Information Terminal). The system included the language compiler, and facilities for testing in a standalone environment, or attached to the CIT. The system's intended use is for prototyping dialogues and market testing of a new system.

The Royal Bank - Banking Unit Locator System (1988-1989)

The Banking Unit Locator System (BULS) was developed after considerable analysis of existing system, inhouse and out. It was developed for the Information Centres, with the prime objective of shortening the average client call from about 5 minutes down to less than a minute. Designed and implemented a system which could locate a caller's nearest branches and ATM's within seconds of entering the cross streets for any of thirty major cities across Canada, (including side streets and major centres such as hotels and malls).

Pegasus Consulting - Manager Micro Division (January 1988 - September 1990)

Joined Pegasus as the Director of the Microcomputer Consulting Division, and on the premise of becoming a partner in the firm. Was responsible for other consultants out on contract, marketing directions for the group, screening and interviewing consultants, attracting new business, and placing consultants.

During the time with Pegasus, was also on contract with The Royal Bank of Canada for several projects. The two most significant projects were the development of a Branch and ATM locator system for their Inbound Telemarketing Centres, and a Marketing Support system based on client data delivered to the users on CD-ROM media.

The Royal Bank - MARKS (1987-1988)

This project entailed replacing an outdated system called IRKS for managing moveable assets within the Bank. The IRKS database was not properly normalized, so indexing times were running into several hours, and there was a significant problem with inconsistent data. The system which was designed could rebuild indexes in a few minutes, and the conversion system reported on inconsistencies for the users to clean up. A major flaw in the depreciation formulae was caught and corrected. An added feature was a PO (Purchase Order) front-end.

This was to be an interim system which would be used for 6 months to a year, when it would be replaced by a mainframe application called MACS. The last time checked, the MARKS system was still being used four years after it was to have been replaced.

Online Financial Systems (1987-1988)

First joined Online Financial Systems to maintain a Signature Capturing product which had been developed by a previous consultant. Assessed the damage as unsalvageable, and quoted on the redesign of the project such that it could be maintained. The marketing directions of Online Financial changed, and the product was shelved.

The next project with OFS was the design of an in-branch banking system for sale to credit unions, and for potential use in banks and trust companies. Designed the architecture, and was placed in charge of a small team for this system. The major constraint in developing this for the credit union market was cost. Designed a system running on an IBM PC/AT with up to 32 IBM 3101 terminals which could perform better than available LAN based solutions at a fraction of the cost per workstation. It was a multi-tasking platform running on top of standard PC-DOS. The multi-tasker and forms management system were made transparent for the application programmers.

Association Management Online (1985-1986)

Performed various maintenance programming, customer support, and technical support duties for AMOL on a part time basis. The system which they used both in-house, and marketed to other clients was based on XENIX and Unify. Hardware was originally on a 68000 Altos platform, and later ported to an IBM PC/AT. The system was originally written in RM/COBOL, and later rewritten with the Unify SQL database language. Although the package was developed in the USA, I was responsible for doing some of the redesign work. Was also responsible for supporting all Canadian clients.

Zakrison Systems (1985-1986)

Was employed as a senior "C" programmer for developing a special purpose spreadsheet system for the financial community. (The functions being performed were not possible with "general purpose" spreadsheets at the time.) Was also involved as an analyst in moving a custom accounting system from an IBM mainframe to an inhouse Unix system. Also developed a custom communications package which had scripting capability (unheard of at the time).

Ontario Hydro

Designed a Hearings Management System to be run on a desktop computer, replacing an existing mainframe application which was proving to be inadequate. It has proved itself in annual rate hearings ever since. Was also involved with upgrading the system from time to time on a part time basis.

CMQ Communications Inc. (Now Telerate)

Developed two systems: a Tektronics graphic terminal emulator with scripting capabability, and a language conversion program to do semi-automatic translations from one assembler to another. The Tektronics terminal emulator is still faster than currently available systems, and was a landmark in its time for a scripting capability which allowed automatic overnight log-ons to remote systems and downloaded graphs to have them printed by morning.

Developed the entire system including low-level graphics primitives, the FSM (Finite State Machine) implementing the protocol, the interrupt driven communication routines, and the parsing and string match routines for the automatic logon capability. (Had to be able to match on more than one string in a byte stream.)


Briefly..


Was one of the first pioneers in Canada to build my own Personal Computer and design a debug monitor for it back in 1975. Became a member of the first Toronto Computer Club (TRACE), and founded another club in the late 70's.

Run a network at home with many Linux servers, FreeBSD systems, and three SGI systems and an UltraSparc Solaris 9 system. Have been supplying mail and news feeds for companies and individuals since the late eighties.

Was a founding partner in three other successful companies (StarNix Inc., Planix Inc. and Tanda Technologies Inc.) before moving on to start ServerMetrix (BeachNet Communications Inc.).

Member of the ACM, Usenix and LISA (Large Installation System Administration).

When not sitting in front of a CRT, enjoys photograpy, flying a four-seater Piper, Ham Radio and catching those other kind of rays in Bermuda.