John M. Calvert


49 Belmont Avenue, Ottawa, Ontario K1S 0V2, (613) 730-9851

contact by e-m-a-i-l


Objective: Architect, Development Team Lead, or Senior Programmer/Analyst consulting position.


Skills

· Exceptional analysis, design and problem solving ability.

· Strong knowledge of relational theory, database design and normalization. Experience with several RDBMS, database implementation and optimization.

· Experience with analysis methodologies including RUP, UML, Use-Cases, Entity Relationship diagrams, Process Flow diagrams, and Data Flow diagrams.

· Experience with development methodologies including RAD and JAD.

· 11 years experience developing software in Visual Basic, ASP, SQL, PHP, C, Pascal, and FORTRAN, on Intel/Windows, Sun/UNIX and VAX/VMS.

· 9 years experience developing Windows applications. MS Certified Solution Developer and Product Specialist in Visual Basic and SQL Server.

· Experience with object-oriented design: abstraction, information hiding, inheritance, and polymorphism.

· Extensive experience with software development procedures: source control, change management, make/build, and integration of documentation.

· Experience building Internet-based applications: HTML / DHTML, server-side dynamic pages (ASP, JavaScript, Perl, Cold Fusion), and database connectivity.

· Published author of technical articles (VBPJ & MSDN).

· Bilingual; Secret security clearance; Incorporated business.


Employment

IT Consultant self-employed 1998 - present


Human Resources and Development Canada - Application Architect Feb 2004 – ongoing

Responsible for the application architecture, requirements gathering, high level design, data modeling, and development of a VS.NET (ASP.NET / VB / C#) n-tier web application. Developed code components including Jscript (JavaScript), HTML, ASP.NET, C#, SQL views and stored procedures, and MS Exchange customizations. Designed and development integration between application and MS Outlook / Outlook Web Access and MS Exchange to allow for remote workflow.

Tools included: Visual Studio .NET 2003 Enterprise Architect, Visio Professional, MS SQL Server 2000, ADO.NET 2.7, XML, SOAP, MS Exchange 2000/2003, MS Outlook 2000/2002, MS Windows 2000/2003/XP, MS Internet Information Server 5.0, Visual SourceSafe.


Canadian Air Transport Security Authority – Systems Architect May 2003 – Jan 2004

Responsible for the overall system architecture and integration of 40 corporate and operational information systems, including a variety of COTS systems for Finance, HR, Payroll, Facilities Management, Business Intelligence, Electronic Document Management, a custom operational information management system, an operational data store and an analytical data warehouse. Met with business primes and senior managers to identify, research, analyze and integrate existing, planned and future information systems. Created architectural and process flow diagrams and entity relationship diagrams to document system architecture. Recommended specific technical solutions to integrate systems including an operational data store for core corporate data, database replication for inter-database synchronization, and extending the schema of the directory services for enterprise-wide single sign-on.

Responsible for architectural and technical requirements and evaluation criteria on several large software RFPs, including for the business intelligence system and a custom software development project. Reviewed all business requirements and functional specifications.

Researched cross-platform web server and directory server interoperability issues. Recommended a solution for single sign-on and client authentication / authorization. Researched cross-platform multi-lingual / code page issues between web server, development platform and database platform.

Responsible for the design and configuration of the development environment and tools. Advised project managers and programmers on coding standards, mentored programmers. Conducted code reviews.


Citizenship and Immigration – Data Modeler / Programmer Analyst April 2003

Gathered requirements, designed, developed and tested a data entry application in MS Access. Analyzed data requirements and developed the data model. Tools included: MS Access XP & 97, MS Windows 2000/XP.


1310521 Ontario Inc. – Systems Analyst Jan – March 2003

Gathered requirements, designed, developed and tested a web service application in PHP and MySQL under Apache. Compared development cost to equivalent web service in MS.NET. Developed a customization of PHP in its C source code. Tools included: PHP 4.x & 5.x, Apache 1.3 & 2.0, MySQL 4, Visual Studio .NET, SOAP, Visual Studio 6.0, VC++ 6.0, MS Windows 2000/XP, Red Hat Linux, XML RPC.


6016138 Canada Inc. – Systems Analyst Nov – Dec 2002

Gathered requirements, designed, developed and tested a 3-tier .NET web application in ASP.NET, Visual Basic .NET, SQL Server. Developed system architecture and data model. Configured remote source code control and remote SQL Server 2000 access to enable distributed team development over the Internet. Tools included: Visual Studio .NET, SQL Server 2000, Windows 2000/XP, Internet Information Server (IIS) 5.0, IE 6.0, ADO 2.6, Visual SourceSafe, Source Off Site, Crystal Reports.


Export Development Canada - Team Lead / Systems Analyst Jan 2001 – June 2002

Managed teams of 3 to 8 programmers designing and developing ASP, COM and SQL components of a 3-tier web based export credit insurance application, as part of a one hundred person project. Responsible for requirements review, high level and detailed designs, SQL / VB / VBScript / JavaScript code, design and code reviews, and unit and integration testing, and all associated documentation. Responsible for initial VB coding standards document for architecture team. Assisted design team with data modeling and analysis team with requirements gathering and analysis.

Managed Special Projects team which designed and developed project efficiency tools including: unit test tool with GUI interface to VB COM DLLs; XML driven code generation engine for data tier code for SQL stored procedures and VB calls of sps; XML driven code generation engine for VB constants for database column names. Managed system performance SWAT team. Responsible for investigating and resolving (coding & testing) acute performance problems and bottlenecks, using Compuware NuMega DevPartner (TrueTime) and Microsoft Web Application Stress Tool.

Reported to Manager of Development; during one project phase was identified as backup for development manager in project succession plan. Worked closely with team leads and managers of analysis, design, architecture, database, system test and quality assurance teams. Tools included: Visual Studio 6.0, Visual Basic 6.0, VBScript / JavaScript, Visual InterDev 6.0, SQL Server 2000 / 7.0, XML, Windows 2000 / WinNT 4.0, Internet Information Server (IIS) 5.0, IE 5.5, ADO 2.5, Visual SourceSafe, COM, Visio 2000, Crystal Reports.


Nortel Networks / PinMoney - Team Technical Lead / Senior Software Developer

Sept 2000 – Dec 2000

Technical lead on a team of 8 developers. Gathered requirements, designed and developed VB, C and SQL components of a 3-tier architecture on-line purchase and credit processing system (presentation layer, business objects and data layer). Participated in product definition and requirements analysis process, including UML modeling, process flow diagrams and use cases. Wrote high-level and detailed design documents in MS Visual Modeler. Oversaw first draft of code inspection guidelines. Wrote model unit test plan document. Responsible for the team software development environment (SDE). Initiated the documentation of the SDE configuration. Responsible for team adherence to coding standards. Responsible for enhancing and extending coding standards, e.g. error handling, debug logging, interfaces between layers in 3-tier architecture. Established team practice of formal code inspections and unit testing. Mentored junior and intermediate team members in VB and SDE practices.

Optimized VB and SQL code for Oracle 8i database, including overseeing a major rewrite of one component of the presentation layer. Researched and documented impact of Oracle transaction isolation levels on SQL batch process with large data read requirements. Developed C DLL for common access from C and VB to NT EventLog, including definitions of EventLog categories and messages. Lead efforts to develop utility to manage configuration and compilation of multiple VBP project files, and to develop a VB Add-In to apply coding standards in IDE. Tools included: Visual Studio 6.0, Visual Basic 6.0, Visual C++ 6, Visual SourceSafe, COM, WinNT 4.0, UML, Visual Modeler, Visio 2000, Oracle 8i, MSMQ, Crystal Reports.


MSDN Magazine and VBPJ magazine - Author

Wrote technical articles on Visual Basic / Windows API programming topics for two programming trade magazines. MSDN article describes using Windows API functions to enhance the display of long text strings in a ComboBox or ListBox control. VBPJ article describes using an undocumented Windows API function to format a disk drive from code, including converting the function calls from C to VB.


House of Commons - Senior Programmer Analyst Jan 2000 – Jun 2000

August 1998 – June 1999

Apr 1998 – July 1998

Responsible for the analysis, design, development and maintenance of, and enhancements to, a suite of client server and Internet applications in the Committees and Parliamentary Exchanges Branch, Journals Branch, INET group and Corporate Services group. This included InfoCom, PEATS, LIMS, Table Dashboard, Members / Senators / Cabinet List, www.parl.gc.ca and InfoTel. Conducted analysis and requirements definition through client interviews. Responsible for client liaison. Responsible for data modeling and development of entity relationship diagrams in ER/win. Designed user-interfaces and conducted JAD design sessions. Met regularly with project end user representatives to review entity relationship model, application prototype, and to assess, review and prioritize new features and defects. Worked with client throughout all stages of the systems development life-cycle process. Responsible for system testing, user acceptance testing and deployment.

Designed, developed, tested, deployed and maintained 4 separate client server VB / SQL Server applications. Optimized SQL for MS SQL Server 6.5 / 7.0 and MS Access 97. Resolved program stability and performance issues using Compuware NuMega DevPartner tool suite. Investigated international language support for a VB / SQL Server / MS Access application. Administered and configured development and production MS SQL Servers. Researched, planned and implemented a multiple publisher SQL Server replication topology to link four SQL Server databases and one BASIS Plus database. Researched, planned and executed the conversion of the static and dynamic content of the public parliamentary website from an IRIX / Netscape Internet Server machine to a Windows NT / IIS machine. Designed and developed dynamic web content using MS IIS Active Server Pages VB Script, JavaScript and DHTML. Responsible for deployment, upgrading and maintenance of application and database components. Supervised junior team member writing MS Access reports. Tools included: Visual Basic 6.0, Visual InterDev 6.0, Visual SourceSafe, COM, DCOM, XML, SOAP, WinNT 4.0, ER/win, MS SQL Server 7.0 & 6.5, D/HTML, VBScript, JavaScript, MS Internet Information Server (IIS) 4.0, Crystal Reports.


Canada Post - Senior Software Developer Sept 1999 – Jan 2000

Senior developer on a team of 8 developers. Designed and developed VB and SQL components of a 3-tier architecture track and trace application (presentation layer, business objects and data layer). Designed and developed a set of ActiveX DLL/EXE servers for the middle tier business objects. Advised system architect on the use of COM and ActiveX servers in a 3-tier architecture. Researched an undocumented Windows API function to format a disk drive from code, and converted the function call from C to VB. Significantly simplified business objects' code by eliminating or rewriting overly complex interfaces. Rewrote kludgy approach to instantiating Crystal Reports report object. Mentored junior and intermediate team members. Participated in code inspections and wrote unit test plans.


Senior Programmer Analyst Systems Interface 1995 - 1997

Analyzed, designed, developed and tested major components of several client-server applications. Assisted in requirements analysis and project specification phases of several projects. Led requirements review sessions. Developed data models and database designs. Implemented and optimized databases in SQL Server and MS-Access. Designed reusable components for interface to database. Wrote sophisticated database server components consisting of 100s of lines of stored procedure code. Optimized large data modification SQL operations to reduce contention and eliminate server problems due to too large a transaction rollback log. Developed batch pre-processors to overcome limitations in older versions of VB. Researched and implemented internationalization strategy using 3rd party tools to extract and manage strings and translations. Tools included: Visual Basic, Visual InterDev, SQL Server, MS-Access, Crystal Reports, Impromptu, InstallShield.


Software Designer and Programmer Rivera-Hartling Systems 1992-1993

Designed, developed and tested MS Windows and DOS based software in C for the Ontario Ministry of Health. Responsible for testing the software interface with custom hardware. Performed quality assurance duties.


Software Designer and Programmer freelance 1991-1993

Designed, developed, tested and maintained several tools in C and dBASE. These included: a filter to link two programs with incompatible file transfer formats; a program to manage project accounts for a statistical consulting firm; and a program to export data from a Framemaker document to a UNIX database (Canadian Microelectronics Corporation). Managed a university departmental network of 15 Sun workstations.


Programmer engineering firm & research labs 1986 - 1991

Developed and maintained software in C, BASIS and FORTRAN77 at Powlesland Consulting Engineers, National Defense Esquaimault, Queen's University, and Mount Allison University. Maintained and rewrote several programs used in a civil engineering firm. Wrote software used in a variety of research and mathematical applications.


Education

Microsoft Certified Solution Developer (Visual Basic, MS-SQL Server), 1996

M.Sc. (Computer Science), Queen’s University, 1991

B.Sc. (Mathematics), Mount Allison University, 1989

Diplôme supérieur d’études françaises, Strasbourg, France, 1988

Certificat en français pour non-francophone, Université de Québec à Trois-Rivières, 1987


Computer Hardware and Software

· Languages: Visual Studio .NET 2003 / 2002 / 6.0 (VS), Visual Basic (VB & VB.NET), C#, C++, Active Server Pages (ASP & ASP.NET), ADO & ADO.NET, XML, VBScript, JavaScript, HTML, DHTML, Macromedia Dreamweaver / Cold Fusion MX, C (ANSI, Microsoft & Sun), PHP, Perl, Pascal, FORTRAN, UNIX shell script, VAX assembler.

· Databases: MS SQL Server, MySQL, Oracle 9i/8i, MS Access.

· Servers: MS Internet Information Server (IIS), Apache, Sun ONE (iPlanet) Web Server, MS Exchange 2000, MS Active Directory, MS Sharepoint Portal Server, Cognos Enterprise Business Intelligence suite (PowerPlay, Visualizer, NoticeCast, DecisionStream, etc).

· Operating Systems: Windows XP/2000/NT, Windows ME/9x, MS-DOS, Linux, UNIX, SunOS, Solaris, VMS.

· Analysis Tools: UML, Rational Suite (Rose, Requisite Pro, XDE), All Fusion Erwin Data Modeler, Visual Modeler, Visio Professional / 2000, Crystal Reports, Cognos Impromptu

· Hardware: PC and compatibles, Sun workstations (3/60, 3/80 & Sparcstation), VAX.

· Applications: MS Office, MS Outlook, MS Project, MS Power Point, OpenOffice.org, Word Perfect, Framemaker.


Publications

"Format a Floppy Disk From Code", Visual Basic Programmer's Journal, June 2000, Vol. 10, No. 7, pg. 126-131.

"Enhance the Display of Long Text Strings in a Combobox or Listbox", MSDN Magazine, December 2000, Vol. 15, No. 12, pg. 104-107.


Awards

Natural Sciences and Engineering Research Council PGS3 Scholarship, 1991

Natural Sciences and Engineering Research Council PGS1 Scholarship, 1989

Harry S. Sheffield Prize in Mathematics, Mount Allison University, 1989

Natural Sciences and Engineering Research Council Summer Research Fellowship, 1988

Bell Summer Research Fellowship, Mount Allison University, 1987


Other Skills

Functionally bilingual (English / French), basic Spanish.

Published author of technical articles (Visual Basic Programmers Journal; MSDN Magazine)


Interests

Canoeing, Cycling, Environment, Sailing, Squash, Travel, X-Country Skiing.


Volunteering

Board of Directors: Canadian Parks and Wilderness Society – Ottawa Valley (2003 – 2005); Citizens for Safe Cycling (1997 - 1999); Hosteling International Canada - Ontario East Region (1996-1997).

Volunteer: Ottawa-Outaouais Social Forum, Britannia Yacht Club; Ottawa Folk Festival, Ottawa Fringe Theatre Festival, Ottawa Public Library Fundraising Committee; Ottawa YMCA Canoe Camping Club.

1