Experience (Details):
2016 to 2020 (PrecisionIT, Ottawa) Contractor at CBSA (Ottawa).
2014 to 2016 (OpenFrame Technologies, Montreal) Contractor at CBSA (Ottawa).
Monitor CECP systems (24/7 uptime), provide software support. [Windows, TSO/ISPF/OMVS, SQL, IBM DB2, WebSphere MQ].

Design and implement applications to monitor and support daily operations, generate reports. [Windows, C, C++, VB6, Perl, Excel].

2013 (MGIS, Ottawa) Contractor at DRDC (Shirley’s Bay, Ottawa).
Investigate buffering problem in high-speed (Gigabit Ethernet) communications system. [Linux, C, C++].
2011 to 2012 (Huntech, Ottawa) Contractor at EMS SATCOM, now Honeywell (Ottawa).
Windows/embedded Developer: MCDU emulator/communications; bug fixing airplane phone system. [C, C++, ARINC 429/739].
2011 (IT/NET, Ottawa) Contractor at Transport Canada.
Web Application Developer/Analyst: web-site enhancements for aircraft maintenance reporting. [ASP, ASP.NET, SQL, C, C++].
2010 (Excel ITR, Ottawa) Contractor at Alcatel-Lucent.
Investigate LAN switch firmware boot-up hang; invent real-time stack trace debugger; solved. [C, C++, SunOS, pSOS/RTEMS].
2004 to 2010 (Routes AstroEngineering/COM DEV Canada, Kanata) Systems Programmer/Analyst.
Design and develop EGSE for Cassiope/DSU (MDA, CSA). [Visual C++, Java, Windows XP/2000].

Re-design, enhance and ship Cassiope/DSU Flight Software. [RedHat Linux, BlueCat RTOS, gcc, VMWare].

Design and develop EGSE and BSP Firmware for NEOSSat Instrument Electronics (MSCI). [Visual C++, TASKING DSP56303].

At COM DEV, write and review proposals; mock-up/prototypes for new systems development projects. [Java, ASP .NET, C, C++].

2002 to 2004 (Department of National Defence, Ottawa) IT Asset Management.
Control IT-related hardware assets (computers, monitors, laptops, etc.) for ADM(Mat) in the National Capital Region.

Design, and maintain SQL forms, queries and reports [Microsoft Access, SQL Server].

2000 to 2001 (StorageQuest Inc., Ottawa) Project Manager and Software Designer.
Develop Windows kernel-mode caching for hard disks/removable media/jukeboxes. [Microsoft DDK, Visual C++, Windows NT].

Implement CD-R Burner/Duplicator, burning concurrent CD-R drives in a tower. [Visual Basic, Visual C++, Windows NT].

1997 to 2000 (PIKA Technologies, Kanata) Programmer/Analyst.
Develop “MonteCarlo” API for Pika telephony boards. [Microsoft Visual C++, MFC, Windows NT]. Port to RedHat Linux.

Wrote example (PBX, voice-mail, FAX, text-to-speech) applications and automated test scripts. [Windows, RedHat Linux].

1994 to 1997 (K O M Inc., Ottawa) R & D Manager Programmer/Analyst.
Design and develop Windows kernel-mode device driver for SCSI (WORM and rewritable) optical disks and jukeboxes.

Design and develop GUI applications to install, configure, and support “OptiServer”. [Microsoft SDK, MFC, DDK, Windows NT].

Support “OptiServer/VMS” [Alpha AXP]. “OptiServer/Unix”, certifying jukeboxes and drives. [C, SunOS, Solaris, HPUX].

1992 to 1994 (Rideau Management Group Ltd., Ottawa) Contractor.
At JetForm, port PC/X Windows form-filling package to Mac. Design and code AppleTalk-aware printer driver [C, XVT, MPW].

At DND (DGLEM), develop LSAR (Logistics Support analysis recording) utilities for PMO-LLAD [C, Oracle].

At DND (DGLEM), wrote Configuration Management data-entry and utility reports [PowerBuilder, SQL/Windows, FoxPro].

1986 to 1988 (K O M Inc., Ottawa) R & D Software Manager.

1988 to 1990 (K O M Inc., Ottawa) R & D Manager.

1990 to 1992 (K O M Inc., Ottawa) Consultant.

Design and code real-time data acquisition system “DAS”, three PDP-11s linked across Ethernet using custom-designed packet software, part of a standalone medical imaging storage and manipulation system. [RT-11, PDP-11/73 Macro assembler, Fortran].

Debug device driver “OptiFile” for WORM optical media, allowing disks to appear rewritable. [VMS, µVAX assembler].

Port “OptiFile” VMS device driver to Unix. Re-design for portability/maintainability. [C, SunOS, OSF, HP-UX].

Design and build standalone system “OptiFile III” with dual SCSI bus in a custom-designed multi-tasking O/S. [C, x86 assembler].

Design and code real-time voice&data-logging system “OptiLogger” with simultaneous audio playback&recording on WORM media, custom real-time file system, custom firmware [x86], multi-user control software. [RT-11, PDP 11/73 Macro assembler].

Design and code “OptiServer/VMS” to manage optical disk jukeboxes, auto swap disks when not in drive. [VMS, C, DCL, Rdb].

Design and code a document image management system “AIMS”, including an integrated SQL database (Gupta, Ingres) and API to maintain document and image-related keyword information. [Windows 3.0, Borland C, SQL].

Design and develop a similar document storage and retrieval system “Bazooka” [SCO Unix] featuring a custom workflow processing language, automatic indexing of documents via “compound document” (ODIF) format. [C, X Windows, Ingres].

1985 to 1986 (Genesys Group Inc., Ottawa) Programmer.
Member of a team developing a NAPLPS (Telidon) database retrieval system, still used by OC Transpo. [COBOL, C, RSX-11M].

Implement a multi-user NAPLPS (Telidon) system for data entry and reporting. [COBOL, experimental Pasopia mainframe].

1981 to 1984 (Quadrex Information Systems, Montreal) Co-Founder/Partner and Software Manager.
Design and build a sophisticated standalone word-processing system and VT-100 emulator inside a DEC VT-100 terminal (replacing the logic board with our custom-built board), featuring a multi-tasking operating system “Thoth”, a GUI word-processing system, a cross-compiler [C-like, Z8000], fast linker and hex EPROM burner [RT-11], and host file software. [RSTS/E, RSX-11M].

Hire and train programmers, a technical writer, and support technicians.

1978 to 1980 (Bell Northern Research, Ottawa) Programmer.
Code and maintain “ANOM”, a simulation of traffic on a Telephone network. [Fortran, IBM VM/CMS].

Create a model predicting MTBF/MTTR from a parts list and a connection graph using MIL Handbook. [BASIC, Fortran].

1978 to 1979 (Carleton University, Ottawa) Teaching Assistant/Research Assistant.
Teaching assistant, 3rd-year real-time programming course (PDP-11s). All my students got either A or A+.

Research assistant. Code and debug LALR grammar compiler system. [XPL].