Senior Software Developer / Architect

A Senior Engineer and Developer with over 14 years cutting-edge IT experience. A specialist in developing complex applications and servers in C/C++/C#/PHP/Java/Ruby on multiple platforms. A track-record of designing, developing and delivering products on-time and on-budget and a demonstrated ability to produce enterprise class software for the North American, European and Asian markets.

As comfortable architecting solutions as mentoring junior developers. Well suited to challenging positions that require strong leadership, design and technical skills. A proven asset to companies because of a broad range of skills extending beyond Object Oriented Development and Architectures, including Unix System Administration, Network Design, Database Administration, Documentation and Management.

Skilled at network socket programming, threading, cryptography, web based application development. An experienced 3D game developer, whose work has been recognized with various awards from others in the industry. Designed and developed 3 tier client/server/database applications that served millions of users and handled thousands of transactions a second.

Portfolio of Programming Skills

Languages: C, C++, C#, PHP, Ruby on Rails, Java, MFC, SQL, ASP.NET, JavaScript, HTML, CSS
Development Tools: Visual Studio, NetBeans, RubyMine, gcc, CVS, Subversion, Git, Mercurial, TFS
Databases: MySQL, MSSQL Server, Oracle, Access, PostgreSQL, SQLite
Systems: Linux, Solaris and other Unix variants, Windows, Mac, Android

Professional Experience

Senior Software Developer January 2005 - Present
Ivara Burlington, Ontario

Ivara is a company that creates software to help large industrial companies manage the maintenance and reliability of their assets. Ivara's software is used by Fortune 500 companies around the world

Converted the company's flagship product from a 2-tier MFC application to a 3-Tier .NET application. The development required that all functionality be maintained while rewriting the product to have a modern user interface and support hundreds of concurrent users.

In order to deliver on-time and to specifications, pushed the company to adopt agile development practices. Brought test-driven development, continuous builds and an iterative approach to development to the company.

Web Developer January 2000 - Present
Alteridem Consulting Burlington, Ontario

During more than 10 years as a consultant, developed software and web sites for dozens of companies including TD Canada Trust, Cropmarks, Lockheed Martin, Ivara, Losani Homes, Connon Nurseries, The Aladon Network, OK&D Marketing, Lens Day, Toronto Tours, Super Sport Club, Bernardin, Tourism Hamilton, BIE Health Products Direct Mail Worx and many others.

Senior Software Architect December 2002 - June 2004
Semaview, Inc Toronto, Ontario

Led the team that wrote eventSherpa, a networked desktop calendar application written in C#. It is capable of publishing calendars to the web, subscribing to online calendars, inviting people to events and merging multiple calendars into one view. Took the initiative to design and write a Palm Desktop plugin in my off time to allow publishing of Palm calendars and todo lists to the eventSherpa service.

Took the lead in documenting and managing all development processes for the company. Led the server development team in designing and building web systems to run the online eventSherpa service and SherpaFind calendar search engine. Determined all hardware requirements for the system and set up the network. Responsible for the security of the network.
Senior Programmer/Analyst October 2000 - November 2002
Livedoor, Inc Tokyo, Japan

Head of Client Programming for Japan's first and largest free Internet service provider, Worked closely with the CTO to map out the development plan for the company. Led a software development team of four C++ programmers on two continents and worked closely with the head of server programming to ensure the seamless integration of organization wide applications.

Supervised the development of the company's Internet connection software and client tools such as their Internet Toolbar. Converted the software to work with DSL using PPP over Ethernet (PPPoE), wrote custom authentication modules in Perl for the radius servers and designed and wrote several CGI's in C++ that allowed customers to create and manage their accounts. Was responsible for troubleshooting any network problems and service interruptions.
Senior Programmer/Analyst January 1999 - October 2000
X-Stream Technologies, Inc / LibertySurf UK Toronto, ON / London, England

Managed programming teams of three developers for a large, pan European ISP. Worked closely with the CTO and the head of server development to design scalable, efficient systems on which the company was built. Designed and documented the systems, wrote client and server software in C/C++ that ran on Windows and Unix. Redesigned the company's automatic online software update system.

Led the internationalization of all the company's software allowing them to expand throughout Europe and sell their technology in Asia. In the process, designed and wrote a library to allow software to dynamically load and display different languages. Developed a number of internal tools to aid in the translation of the software.
Java Developer August 1998 - January 1999
Dreamplay Research Corporation Toronto, ON

Developed the company's line of Java casino software including Caribbean stud poker, baccarat, blackjack, video poker, roulette, and, slots. Was responsible for the development of the Java e-Commerce client pCash that plugged into all casino games and the back office financial reporting software written in a combination of C and Java.

Network Management January - May 1998
CIBC- INTRIA Networks Toronto, ON

A part of the team that planned and rolled out the national IP network linking all Canadian Imperial Bank branches and locations. Set up and maintained web and FTP servers on NT 4.0, SunOS and Linux. Designed, created and maintained an Intranet site to catalog and deliver network design documents, project status reports and information on services the company offers. Created several CGI's in Perl that automated network management reporting, uploaded and converted to HTML project status reports and allowed clients to register for services.

Technical Support Supervisor January - September 1997
Globalserve Communications Oakville, ON

As the head of Technical Support, supervised 10 sales and technical support representatives in a call center, developed a training program and trained 30 new technical support staff. Was also responsible for Unix system and TCP/IP network administration and development of system administration tools in C to allow support representatives to query status of users' accounts and of the network systems.

Military Experience 1987-96
Department of National Defense Victoria, BC/Petawawa, ON

During a ten year career with Canada's Department of National Defense, worked in Research, Combat Intelligence, and, served with the Canadian Airborne Regiment.

Open Source & Freeware Projects

Additional Courses, Seminars & Qualifications